Wie kann ich die Remote-Bilddimensionsextraktion mit der Funktion getimagesize von PHP beschleunigen?

Patricia Arquette
Freigeben: 2024-11-04 01:25:03
Original
439 Leute haben es durchsucht

How can I speed up remote image dimension extraction with PHP's getimagesize function?

Beschleunigung von getimagesize in PHP für die Extraktion von Remote-Bildabmessungen

Das Ermitteln der Abmessungen von Remote-Bildern mit der Funktion getimagesize von PHP kann bei großen Bildsätzen träge sein . In diesem Artikel wird ein alternativer Ansatz untersucht, der file_get_contents nutzt, um einen Teil der Binärdaten aus Bildern zur Größenanalyse abzurufen.

Um Bildabmessungen mit dieser Methode zu extrahieren, implementieren Sie die folgende Funktion:

<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>
Nach dem Login kopieren

Führen Sie als Nächstes den folgenden Code aus, um die Abmessungen eines Remote-Bildes abzurufen:

<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>
Nach dem Login kopieren

In unserem Testfall lieferte dieser Ansatz die Abmessungen eines Remote-Bildes in weniger als 0,2 Sekunden.

Hinweis: Passen Sie den Bereichsparameter (im „Range“-Header) an, um mehr oder weniger Binärdaten aus dem Bild abzurufen. Experimentieren Sie mit verschiedenen Bereichen, um die Leistung für Ihre spezifische Anwendung zu optimieren.

Das obige ist der detaillierte Inhalt vonWie kann ich die Remote-Bilddimensionsextraktion mit der Funktion getimagesize von PHP beschleunigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage