Heim >Backend-Entwicklung >PHP-Tutorial >Wie validiere ich hochgeladene Dateitypen in PHP mit „in_array()'?

Wie validiere ich hochgeladene Dateitypen in PHP mit „in_array()'?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-12 13:46:02187Durchsuche

How to Validate Uploaded File Types in PHP with `in_array()`?

Hochladen bestimmter Dateitypen mit PHP

In Webanwendungen erfordert das Hochladen von Dateien durch Benutzer sorgfältige Überlegungen zur Sicherheit und Inhaltsvalidierung. Wenn Sie Uploads auf bestimmte Dateitypen beschränken möchten, bietet PHP über die Funktion in_array() eine Lösung.

Problem:

Sie möchten eine if-Anweisung in erstellen PHP validiert hochgeladene Dateien und erlaubt nur Dateien der folgenden Typen: JPG, GIF und PDF. Der folgende Code erfordert die entsprechende Strukturierung der if-Anweisung.

$file_type = $_FILES['foreign_character_upload']['type']; //returns the mimetype

if(/*$file_type is anything other than jpg, gif, or pdf*/) {
  $error_message = 'Only jpg, gif, and pdf files are allowed.';
  $error = 'yes';
}

Lösung:

Um sicherzustellen, dass die hochgeladenen Dateien Ihren Spezifikationen entsprechen, erstellen Sie ein Array zulässiger Dateien Typen und verwenden Sie in_array(), um zu bestimmen, ob der Mimetyp der hochgeladenen Datei im Array enthalten ist.

$file_type = $_FILES['foreign_character_upload']['type']; //returns the mimetype

$allowed = array("image/jpeg", "image/gif", "application/pdf");
if(!in_array($file_type, $allowed)) {
  $error_message = 'Only jpg, gif, and pdf files are allowed.';
  $error = 'yes';
}

Durch Vergleich des Dateityps Gegenüber der vordefinierten Liste zulässiger Typen verhindert diese überarbeitete if-Anweisung effektiv das Hochladen nicht konformer Dateien.

Das obige ist der detaillierte Inhalt vonWie validiere ich hochgeladene Dateitypen in PHP mit „in_array()'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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