Heim > Artikel > Backend-Entwicklung > Welches Systemarray verwendet PHP, um hochgeladene Dateiinformationen zu empfangen?
Das von PHP zum Empfangen hochgeladener Dateiinformationen verwendete Systemarray ist $_FILES.
In PHP müssen wir häufig Datei-Uploads durchführen, beispielsweise das Hochladen von Bildern, Videos und anderen Dateien. Um relevante Informationen und Daten während des Upload-Vorgangs verarbeiten zu können, stellt PHP ein spezielles Systemarray $_FILES zum Speichern hochgeladener Dateiinformationen bereit. Die Variable
$_FILES ist ein zweidimensionales assoziatives Array mit der folgenden Struktur:
$_FILES = array( 'file' => array( 'name' => 'filename.txt', //文件名 'type' => 'text/plain', //文件MIME类型 'tmp_name' => '/tmp/php/php1h4jCk', //上传的临时文件名 'error' => 0, //上传的错误代码 'size' => 123 //上传文件的大小 ) );
Wobei „Datei“ im Array der Name des Formularelements ist, wie zum Beispiel der folgende HTML-Code:
<form enctype="multipart/form-data" method="POST"> <input type="file" name="file"/> </form>
In dieser Form: „Datei“ Es ist der Name des Formularelements.
In $_FILES umfassen die spezifischen gespeicherten Informationen:
Das Folgende ist die Bedeutung jedes Felds in $_FILES:
Der ursprüngliche Dateiname der hochgeladenen Datei, ohne den Dateipfad. Wenn der Dateiname beim Hochladen einer Datei geändert wird, speichert diese Variable den neuen Dateinamen.
Der MIME-Typ der hochgeladenen Datei, d. h. der Inhaltstyp der Datei, z. B. Text/Plain, Anwendung/Oktett-Stream usw.
Der temporäre Dateiname der hochgeladenen Datei und der Pfad zum Speichern dieser temporären Datei. Dieser Pfad ist das temporäre Verzeichnis auf der Serverseite.
Fehlercode beim Hochladen von Dateien. Wenn der Upload erfolgreich ist, ist dieser Wert 0. Weitere mögliche Werte sind:
- UPLOAD_ERR_OK:文件上传成功。 - UPLOAD_ERR_INI_SIZE:上传的文件超过了php.ini 中 upload_max_filesize 选项限制的值。 - UPLOAD_ERR_FORM_SIZE:上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。 - UPLOAD_ERR_PARTIAL:文件只有部分被上传。 - UPLOAD_ERR_NO_FILE:没有文件被上传。 - UPLOAD_ERR_CANT_WRITE:写入磁盘失败。 - UPLOAD_ERR_EXTENSION:PHP扩展停止文件上传。
Die Größe der hochgeladenen Datei in Bytes.
Beispiel für die Verwendung der Variable $_FILES:
Wenn wir ein Bild in ein Formular hochladen möchten, können wir den folgenden HTML-Code verwenden:
<form enctype="multipart/form-data" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="100000" /> <input type="file" name="image" /> <input type="submit" name="submit" value="Upload Image" /> </form>
Auf der Serverseite können wir den folgenden PHP-Code verwenden, um das Hochladen von Dateien zu verwalten:
<?php if(isset($_POST['submit'])) { $file = $_FILES['image']; $filename = $file['name']; $filetmp = $file['tmp_name']; $filesize = $file['size']; $filetype = $file['type']; // TODO: 处理上传文件 move_uploaded_file($filetmp, "uploads/" . $filename); } ?>
Bei der Verarbeitung hochgeladener Dateien prüfen wir zunächst, ob das übermittelte Formular das Feld „Senden“ enthält. Dies dient dazu, Fehler bei der Verarbeitung hochgeladener Dateien ohne Absenden des Formulars zu vermeiden.
Wir erhalten zunächst die Dateiinformationen aus der Variablen $_FILES und definieren die Variablen $filename, $filetmp, $filesize, $filetype, um den Dateinamen, den temporären Dateinamen der hochgeladenen Datei, die Dateigröße bzw. den MIME-Typ zu speichern.
Als nächstes können wir die PHP-Funktion move_uploaded_file() verwenden, um die hochgeladene Datei aus dem temporären Verzeichnis in das angegebene Verzeichnis zu verschieben, in dem wir die Datei speichern, wie zum Beispiel das Verzeichnis „uploads/“ im obigen Beispiel.
Zusammenfassung:
$_FILES ist die Schlüsselvariable für die Verarbeitung von Datei-Uploads in PHP. Sie enthält verschiedene Informationen zu hochgeladenen Dateien, einschließlich Dateiname, MIME-Typ, Name der temporären Upload-Datei, Größe usw. Bei der Verwendung von $_FILES müssen wir auf den Zeitpunkt der Formularübermittlung, die Logik der Verarbeitung hochgeladener Dateien und die Speichermethode hochgeladener Dateien achten.
Das obige ist der detaillierte Inhalt vonWelches Systemarray verwendet PHP, um hochgeladene Dateiinformationen zu empfangen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!