Heim > Backend-Entwicklung > PHP-Tutorial > Ist die Erweiterungsprüfung für die Bildüberprüfung in PHP zuverlässig?

Ist die Erweiterungsprüfung für die Bildüberprüfung in PHP zuverlässig?

DDD
Freigeben: 2024-11-02 01:28:02
Original
427 Leute haben es durchsucht

Is Extension Checking Reliable for Image Verification in PHP?

Sicherstellen der Dateiauthentizität: Verifizieren von Bildern in PHP

Beim Hochladen von Dateien ist es wichtig sicherzustellen, dass die empfangenen Dateien die vorgesehenen Kriterien erfüllen. In PHP ist die Überprüfung, ob es sich bei einer Datei um ein Bild handelt, eine wichtige Aufgabe für die Sicherheit und ordnungsgemäße Funktionalität.

Ist die Erweiterungsprüfung zuverlässig?

Überprüfung der Dateierweiterung (z. B. .jpg, .png) ist ein gängiger, aber unzuverlässiger Ansatz. Böswillige Benutzer können die Erweiterung einer schädlichen Datei leicht ändern, um diese Prüfung zu umgehen.

Getimagesize: Eine genauere Lösung

Die Funktion getimagesize() bietet eine genauere Möglichkeit, festzustellen, ob eine Datei schädlich ist ein Bild. Es wird versucht, die Datei zu analysieren und Informationen wie Breite, Höhe und MIME-Typ zu extrahieren. Wenn es sich bei der Datei nicht um ein Bild handelt, wird „false“ zurückgegeben.

Beispielcode

Hier ist ein Beispiel für die Verwendung von getimagesize() zum Überprüfen eines Bildes:

<code class="php">if (@is_array(getimagesize($mediapath))) {
    $image = true;
} else {
    $image = false;
}</code>
Nach dem Login kopieren

Ausgabebeispiel

Wenn es sich bei der Datei um ein Bild handelt, gibt getimagesize() ein Array wie dieses zurück:

Array (
    [0] => 800
    [1] => 450
    [2] => 2
    [3] => width="800" height="450"
    [bits] => 8
    [channels] => 3
    [mime] => image/jpeg
)
Nach dem Login kopieren

Durch die Verwendung von getimagesize() können Sie die Sicherheit und Genauigkeit Ihres Bildes verbessern Verifizierungsprozess in PHP.

Das obige ist der detaillierte Inhalt vonIst die Erweiterungsprüfung für die Bildüberprüfung in PHP zuverlässig?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage