PHP-Lernschritte: So optimieren Sie das Laden von Bildern
PHP-Lernschritte: So optimieren Sie das Laden von Bildern
In der modernen Webentwicklung ist die Optimierung des Ladens von Bildern ein wichtiges Thema. Mit der Entwicklung des Webdesigns sind Bilder zu einem integralen Bestandteil der Seite geworden. Zu große oder nicht optimierte Bilder können jedoch dazu führen, dass Webseiten langsam geladen werden, was sich negativ auf das Benutzererlebnis auswirkt. Daher ist das Erlernen der Optimierung des Bildladens eine Fähigkeit, die jeder PHP-Entwickler beherrschen sollte.
Im Folgenden werden einige häufig verwendete Methoden zur Optimierung des Bildladens und entsprechende PHP-Codebeispiele vorgestellt. Wir werden auf komprimierte Bilder, Lazy Loading und Byte-Stream-Ausgabe eingehen.
- Bilder komprimieren
Bildkomprimierung ist eine häufig verwendete Methode zur Optimierung des Bildladens. Durch die Reduzierung der Dateigröße können Sie die Zeit verkürzen, die Bilder für die Übertragung durch das Netzwerk benötigen. PHP bietet verschiedene Möglichkeiten zum Komprimieren von Bildern. Das Folgende ist ein Beispielcode, der auf der GD-Bibliothek basiert:
<?php // 原始图片路径 $source_path = '/path/to/source/image.jpg'; // 目标图片路径 $target_path = '/path/to/target/image.jpg'; // 打开原始图片 $source_image = imagecreatefromjpeg($source_path); // 获取原始图片的尺寸 $width = imagesx($source_image); $height = imagesy($source_image); // 创建目标图片 $target_image = imagecreatetruecolor($width, $height); // 压缩原始图片到目标图片 imagecopyresampled($target_image, $source_image, 0, 0, 0, 0, $width, $height, $width, $height); // 保存目标图片 imagejpeg($target_image, $target_path); // 释放内存 imagedestroy($source_image); imagedestroy($target_image); ?>
Im obigen Code verwenden wir die von der GD-Bibliothek bereitgestellten Funktionen zum Komprimieren von Bildern. Öffnen Sie zunächst das Originalbild über die Funktion imagecreatefromjpeg()
und ermitteln Sie dann seine Abmessungen. Erstellen Sie als Nächstes ein Zielbild mit den gleichen Abmessungen wie das Originalbild und komprimieren Sie das Originalbild mit der Funktion imagecopyresampled()
in das Zielbild. Verwenden Sie abschließend die Funktion imagejpeg()
, um das Zielbild zu speichern und den Speicher freizugeben. imagecreatefromjpeg()
函数打开原始图片,然后获取其尺寸。接下来,创建一个与原始图片尺寸相同的目标图片,使用imagecopyresampled()
函数将原始图片压缩到目标图片中。最后,使用imagejpeg()
函数保存目标图片,并释放内存。
- 延迟加载
延迟加载是一种优化图片加载的方法,可以减少页面的加载时间。通过延迟加载,我们可以将图片的加载推迟到用户浏览到页面中需要的时候再进行。下面是一个简单的延迟加载的PHP代码示例:
<?php // 原始图片路径 $source_path = '/path/to/source/image.jpg'; // 占位图片路径 $placeholder_path = '/path/to/placeholder/image.jpg'; // 替代属性 $alt = '图片'; // 输出占位图片 echo "<img class="lazyload lazy" src="/static/imghw/default1.png" data-src="https://cdn.jsdelivr.net/npm/lazyload/lazyload.min.js" data-original='{$source_path}' alt='{$alt}' />"; ?> <script></script> <script> // 延迟加载配置 lazyloadConfig = { elements_selector: ".lazyload", callback_reveal: function(element) { element.src = element.getAttribute('data-original'); } }; // 初始化延迟加载 LazyLoad.init(lazyloadConfig); </script>
上述代码中,我们首先输出一个带有占位图片和延迟加载配置的<img alt="PHP-Lernschritte: So optimieren Sie das Laden von Bildern" >
标签。其中data-original
属性指向原始图片路径,class
属性为lazyload
。然后在页面底部引入延迟加载的JavaScript库,并通过初始化配置来延迟加载所有带有lazyload
类的图片。当用户浏览到需要加载图片的位置时,延迟加载库会将原始图片路径赋值给src
属性,实现延迟加载。
- 字节流输出
字节流输出是一种优化图片加载的方法,可以减少图片在网络中的传输时间。通过直接将图片的字节流输出到浏览器,可以避免使用磁盘中的临时文件。下面是一个使用字节流输出图片的PHP代码示例:
<?php // 图片路径 $image_path = '/path/to/image.jpg'; // 获取图片的MIME类型 $mime_type = mime_content_type($image_path); // 设置响应头 header('Content-Type: '.$mime_type); // 输出图片字节流 readfile($image_path); ?>
上述代码中,我们首先使用mime_content_type()
函数获取图片的MIME类型,并通过header()
函数设置响应头。然后通过readfile()
- Lazy Loading
Lazy Loading ist eine Methode zum Optimieren des Ladens von Bildern, wodurch die Ladezeit der Seite verkürzt werden kann. Durch verzögertes Laden können wir das Laden von Bildern verschieben, bis der Benutzer die Seite durchsuchen muss. Das Folgende ist ein einfaches PHP-Codebeispiel für verzögertes Laden:
rrreee🎜Im obigen Code geben wir zunächst ein<img alt="PHP-Lernschritte: So optimieren Sie das Laden von Bildern" >
-Tag mit einem Platzhalterbild und einer Lazy-Loading-Konfiguration aus. Das Attribut data-original
verweist auf den ursprünglichen Bildpfad und das Attribut class
ist lazyload
. Führen Sie dann unten auf der Seite die JavaScript-Bibliothek zum verzögerten Laden ein und laden Sie alle Bilder mithilfe der Klasse lazyload
durch die Initialisierungskonfiguration träge. Wenn der Benutzer zu dem Speicherort navigiert, an dem das Bild geladen werden muss, weist die Lazy-Loading-Bibliothek den ursprünglichen Bildpfad dem Attribut src
zu, um Lazy Loading zu implementieren. 🎜- 🎜Byte-Stream-Ausgabe🎜🎜🎜Byte-Stream-Ausgabe ist eine Methode zur Optimierung des Bildladens, wodurch die Übertragungszeit von Bildern im Netzwerk verkürzt werden kann. Indem Sie den Bytestream des Bildes direkt an den Browser ausgeben, können Sie die Verwendung temporärer Dateien auf der Festplatte vermeiden. Das Folgende ist ein Beispiel für PHP-Code, der Byteströme zur Ausgabe von Bildern verwendet: 🎜rrreee🎜Im obigen Code verwenden wir zunächst die Funktion
mime_content_type()
, um den MIME-Typ des Bildes abzurufen und zu übergeben header() legt den Antwortheader fest. Anschließend wird der Bytestrom des Bildes über die Funktion <code>readfile()
an den Browser ausgegeben. 🎜🎜Zusammenfassung🎜🎜Die Optimierung des Ladens von Bildern ist entscheidend für die Verbesserung der Webseitenleistung und des Benutzererlebnisses. Das Laden von Bildern kann durch Methoden wie Bildkomprimierung, Lazy Loading und Byte-Stream-Ausgabe effektiv optimiert werden. In der PHP-Entwicklung können wir die GD-Bibliothek für die Bildkomprimierung, das verzögerte Laden von Bildern über die Lazy-Loading-Bibliothek und die Ausgabe von Bildern über Bytestreams verwenden. Die Beherrschung dieser Methoden kann uns helfen, schnellere und effizientere Webseiten zu entwickeln. Ich hoffe, dieser Artikel kann Ihnen dabei helfen, das Laden von Bildern beim Erlernen von PHP zu optimieren. 🎜
Das obige ist der detaillierte Inhalt vonPHP-Lernschritte: So optimieren Sie das Laden von Bildern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

Die Anmeldung bei CakePHP ist eine sehr einfache Aufgabe. Sie müssen nur eine Funktion verwenden. Sie können Fehler, Ausnahmen, Benutzeraktivitäten und von Benutzern durchgeführte Aktionen für jeden Hintergrundprozess wie Cronjob protokollieren. Das Protokollieren von Daten in CakePHP ist einfach. Die Funktion log() wird bereitgestellt

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP ist ein Open-Source-MVC-Framework. Es erleichtert die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich. CakePHP verfügt über eine Reihe von Bibliotheken, um die Überlastung der häufigsten Aufgaben zu reduzieren.
