원격 이미지 크기 추출을 위해 PHP에서 getimagesize 가속화
PHP의 getimagesize 함수를 사용하여 원격 이미지 크기를 결정하는 작업은 큰 이미지 세트의 경우 느릴 수 있습니다. . 이 기사에서는 file_get_contents를 활용하여 크기 분석을 위해 이미지에서 바이너리 데이터의 일부를 검색하는 대체 접근 방식을 살펴봅니다.
이 방법을 사용하여 이미지 크기를 추출하려면 다음 함수를 구현합니다.
<code class="php">function ranger($url) { $headers = ["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; }</code>
다음으로, 다음 코드를 실행하여 원격 이미지의 크기를 검색합니다.
<code class="php">$url = "http://news.softpedia.com/images/news2/Debian-Turns-15-2.jpeg"; $raw = ranger($url); $im = imagecreatefromstring($raw); $width = imagesx($im); $height = imagesy($im); echo $width." x ".$height." ({$stop}s)";</code>
테스트 사례에서 이 접근 방식은 0.2초 이내에 원격 이미지의 크기를 산출했습니다.
참고: 이미지에서 더 많거나 적은 이진 데이터를 검색하려면 범위 매개변수("Range" 헤더에 있음)를 조정하세요. 특정 애플리케이션에 맞게 성능을 최적화하려면 다양한 범위로 실험해 보세요.
위 내용은 PHP의 getimagesize 기능을 사용하여 원격 이미지 차원 추출 속도를 어떻게 높일 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!