"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > PHP에서 이미지 크기 검색 속도를 높이는 방법: file_get_contents가 솔루션입니까?

PHP에서 이미지 크기 검색 속도를 높이는 방법: file_get_contents가 솔루션입니까?

2024-11-05에 게시됨
검색:870

How to Speed Up Image Size Retrieval in PHP: Is file_get_contents the Solution?

file_get_contents를 사용하여 PHP에서 이미지 크기를 번개처럼 빠르게 얻는 방법

수많은 원격 이미지의 이미지 크기를 가져오는 것은 시간이 많이 걸리는 작업일 수 있습니다. 특히 getimagesize를 사용합니다. 다음은 file_get_contents를 활용하여 이미지 크기를 신속하게 검색하는 대체 접근 방식입니다.

사용자 정의 PHP 함수 사용

다음 ranger() 함수는 원격 장치에서 특정 바이트 범위를 읽습니다. 이미지, 빠른 크기 추출 가능:

function ranger($url){
    $headers = array(
    "Range: bytes=0-32768"
    );

    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($curl);
    curl_close($curl);
    return $data;
}

이미지 크기 추출

이미지 데이터를 얻은 후에는 imagecreatefromstring() 및 내장된 이미지 분석 함수를 사용하여 크기를 결정할 수 있습니다:

$im = imagecreatefromstring($raw);
$width = imagesx($im);
$height = imagesy($im);

성능 측정

이 방법을 사용하면 이미지 크기를 얻는 프로세스가 훨씬 빨라집니다.

$start = microtime(true);

$url = "http://news.softpedia.com/images/news2/Debian-Turns-15-2.jpeg";

$raw = ranger($url);
$im = imagecreatefromstring($raw);

$width = imagesx($im);
$height = imagesy($im);

$stop = round(microtime(true) - $start, 5);

echo $width." x ".$height." ({$stop}s)";

테스트 결과

예제 이미지를 검색하는 데 0.20859초밖에 걸리지 않았습니다. 그 크기. 이 접근 방식에서는 32KB의 데이터를 로드하는 것이 효과적인 것으로 입증되었습니다. 이 기술을 적용하면 원격 이미지의 이미지 크기를 신속하게 얻을 수 있어 getimagesize에서 일반적으로 발생하는 병목 현상을 최소화할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3