在PHP 程式設計領域,在處理影像時,使用預設的getimagesize 函數檢索影像尺寸可能會變得很麻煩。大量遠程影像。為了解決這個瓶頸,讓我們深入研究一種保證閃電般快速性能的替代方法。
透過利用 file_get_contents 函數,我們只能從映像中讀取有限數量的位元組。然後可以仔細檢查這些數據以確定圖像的尺寸。
要採用這種方法,讓我們考慮以下程式碼片段:
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;
}
$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)";
此函式利用 ranger 函式檢索一小部分影像資料。隨後,使用 imagecreatefromstring 從檢索到的資料產生映像資源。最後,imagex 和 imagesy 分別為我們提供了圖像的寬度和高度。
當使用圖像URL 進行測試時,這種方法表現出了令人印象深刻的速度,如下所示:
640 x 480 (0.20859s)
在本例中,提取影像尺寸僅花費了0.20859 秒,凸顯了此方法的效率。
利用讀取有限資料量的能力從遠端影像中,我們設計了一種非常快速且有效的方法來在 PHP 中獲取影像尺寸。這項技術使您能夠輕鬆快速地應對處理大量影像的挑戰。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3