Heim >Backend-Entwicklung >PHP-Tutorial >Bilddateien mit PHP verarbeiten und hochladen
Mit der kontinuierlichen Entwicklung des Internets wird die Verwendung von Bilddateien in Websites immer häufiger. Bei der Entwicklung einer Website müssen Sie den Benutzern häufig das Hochladen von Bilddateien und deren anschließende Verarbeitung ermöglichen. Dies erfordert, dass Entwickler mit der Verwendung von PHP zum Verarbeiten und Hochladen von Bilddateien vertraut sind.
1. Bilddateien hochladen
In PHP können wir $_FILES verwenden, um die hochgeladenen Bilddateien abzurufen:
Zunächst benötigen wir Bestimmen Sie das Verzeichnis zum Hochladen von Dateien. Wir können den temporären Pfad der hochgeladenen Datei ermitteln, indem wir $_FILES „Datei“ festlegen.
Als nächstes müssen wir den Typ der hochgeladenen Datei festlegen. Normalerweise erlauben wir das Hochladen von Bilddateien nur im JPG- und PNG-Format, was mit dem folgenden Code festgelegt werden kann:
$allowed = array('jpg', 'png');
if(!in_array(strtolower(pathinfo( $ _FILES["file"]["name"], PATHINFO_EXTENSION)), $allowed)){
echo "Nur Bilddateien im JPG- und PNG-Format dürfen hochgeladen werden";
exit();
}
Es gibt zwei Hauptsituationen für die Verarbeitung hochgeladener Dateien: Verschieben der hochgeladenen Dateien in das angegebene Verzeichnis, Komprimieren und Anpassen der hochgeladenen Dateien. Diese beiden Situationen werden im Folgenden vorgestellt.
Szenario 1: Verschieben Sie die hochgeladene Datei in das angegebene Verzeichnis. Das Folgende ist ein Beispielcode:
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES"file");
if (move_uploaded_file($_FILES["file"]["tmp_name"] , $target_file)) {
echo „Datei hochgeladen erfolgreich“;
} else {
echo „Datei hochgeladen fehlgeschlagen“;
}
Zweiter Fall: Um die hochgeladene Datei zu komprimieren und anzupassen, können Sie die GD-Bibliothek in PHP bewerkstelligen . Das Folgende ist ein Beispielcode:
$src_image = imagecreatefromjpeg($_FILES"file"); // Legen Sie das Originalbild fest
$dst_image = imagescale($src_image, 300); // Legen Sie die Zielbildgröße fest
imagepng($ dst_image , 'new_image.png'); // Zielbild ausgeben
Der obige Code konvertiert die hochgeladene JPG-Bilddatei in das PNG-Format und passt sie in eine Bilddatei mit einer Breite von 300 Pixeln an.
2. Bilddateien verarbeiten
Sobald die Datei erfolgreich hochgeladen wurde, können wir mit der Verarbeitung der Bilddatei beginnen. Es gibt verschiedene Möglichkeiten, Bilddateien zu verarbeiten.
Um ein Bild zuzuschneiden, können Sie die Funktion imagecrop() verwenden:
$src_image = imagecreatefrompng('image.png'); // Legen Sie das Originalbild fest
$dst_image = imagecrop($ src_image, ['x' => 100, 'y' => 100, 'width' => 200, 'height' => 200]); // Zielbild festlegen
imagepng($dst_image, ' cropped_image.png'); // Das Zielbild ausgeben
Der obige Code schneidet die image.png-Bilddatei in ein 200x200-Bild zu und gibt es als cropped_image.png-Datei aus.
Um ein Wasserzeichen hinzuzufügen, können Sie die Funktionen imagecopy() und imagettftext() verwenden:
$src_image = imagecreatefrompng('image.png'); Originalbild
$ watermark = imagecreatefrompng('watermark.png'); // Wasserzeichen setzen
imagecopymerge($src_image, $watermark, 10, 10, 0, 0, imagesx($watermark), imagesy($watermark), 30) ; // Wasserzeichen zum Originalbild hinzufügen
imagettftext($src_image, 30, 0, 200, 200, imagecolorallocate($src_image, 255, 255, 255), 'font.ttf', 'Mein Wasserzeichen'); // Text hinzufügen watermark
imagepng($src_image, 'watermarked_image.png'); // Ein mit Wasserzeichen versehenes Bild ausgeben
Der obige Code fügt die Bilddatei „watermark.png“ in der oberen linken Ecke des Bildes „image.png“ hinzu und fügt einen Wasserzeichentext hinzu von „Mein Wasserzeichen“ .
Um die Bildfarbe zu ändern, können Sie die Funktion imagefilter() verwenden:
$src_image = imagecreatefrompng('image.png'); image
imagefilter($src_image , IMG_FILTER_GRAYSCALE); // Konvertieren Sie das Bild in ein Graustufenbild
imagepng($src_image, 'grayscale_image.png'); // Geben Sie ein Graustufenbild aus
Der obige Code konvertiert das image.png-Bild in ein Graustufenbild umwandeln und es in der Datei greyscale_image.png ausgeben.
Zusammenfassung
Anhand der obigen Einführung können wir einige Probleme und Lösungen erkennen, auf die beim Verarbeiten und Hochladen von Bilddateien in PHP geachtet werden muss. Wenn Sie Bilddateien auf Ihrer Website verwenden müssen, können diese Methoden Ihnen dabei helfen, die Funktionalität schnell zu implementieren. Natürlich handelt es sich bei der obigen Einführung nur um die Grundlagen. Bei komplexeren Bildverarbeitungsvorgängen müssen sich Entwickler an die tatsächliche Situation anpassen.
Das obige ist der detaillierte Inhalt vonBilddateien mit PHP verarbeiten und hochladen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!