Heim  >  Artikel  >  Backend-Entwicklung  >  Grundlegende Einführung in das Hochladen von PHP-Dateien

Grundlegende Einführung in das Hochladen von PHP-Dateien

小云云
小云云Original
2018-03-02 11:04:201669Durchsuche

1. Datei-Upload

Über PHP können Dateien auf den Server hochgeladen werden. Daten können per Formular oder Post an den Server übermittelt werden, aber per Post können keine Dateitypdateninformationen übermittelt werden.
1>PHP-Datei-Upload-Befehlskonfiguration

  1. file_uploads=on|off

     Bestimmen Sie, ob das PHP-Skript auf dem Server Datei-Uploads akzeptieren kann.

  2. max_execution_time=integer
     Maximale Zeit in Sekunden, die ein PHP-Skript ausführen kann, bevor ein schwerwiegender Fehler registriert wird.

  3. memory_limit=integer

     Legen Sie den maximalen Speicher in MB fest, den das Skript zuweisen kann. Dies verhindert, dass außer Kontrolle geratene Skripte den Serverspeicher monopolisieren.

  4. upload_max_filesize=integer
     Legen Sie die maximale Größe der hochgeladenen Dateien in MB fest.

  5. upload_tmp_dir=string
     Legen Sie fest, dass die hochgeladene Datei an einem temporären Ort auf dem Server gespeichert wird, bevor sie verarbeitet wird, bis die Datei an ihr endgültiges Ziel verschoben wird.

  6. post_max_size=integer
     Bestimmt die maximale Größe der Informationen in MB, die über die POST-Methode akzeptiert werden können.

2>$_FILES-Array

<form action="upload_file.php" method="post"enctype="multipart/form-data">
    <label for="file">上传文件:</label>
    <input type="hidden" name="MAX_FILE_SIZE" value="1000"/>
    <input type="file" name="file" id="file" /> 
    <img id="preview">
    <br />
    <input type="submit" name="submit" value="Submit" />
</form>

ENCTYPE=“multipart/form-data“:
Dies ist die feste Schreibmethode, andernfalls schlägt der Datei-Upload fehl.
ACTION=“upload.php“:
Definieren Sie den Programmdateipfad für das Hochladen.
METHOD=“post“:
Definieren Sie die Übertragungsmethode als POST. Im Allgemeinen werden Formularübermittlungsdaten auf POST eingestellt.
<input type=“hidden“ name=“MAX_FILE_SIZE“ value=“1000000“>
Dies ist ein verstecktes Feld, das die Obergrenze der hochgeladenen Dateigröße definiert. Wenn dieser Wert überschritten wird, schlägt der Upload fehl. Es muss vor der Datei-Upload-Domäne definiert werden. Der hier definierte Wert darf den in der Datei „upload_max_filesize“ festgelegten Wert nicht überschreiten, andernfalls ist er bedeutungslos (Hinweis: Der Wert von MAX_FILE_SIZE ist nur ein Vorschlag für Der Browser kann tatsächlich leicht umgangen werden. Verlassen Sie sich also nicht auf Browsereinschränkungen. Der maximale Wert für hochgeladene Dateien in den PHP.ini-Einstellungen ist jedoch nicht ungültig Formular „MAX_FILE_SIZE“, da es den Benutzern die Mühe erspart, auf das Hochladen einer großen Datei zu warten, nur um dann festzustellen, dass die Datei zu groß ist)

Dies ist die Datei-Upload-Domäne. Das Attribut „Typ“ muss auf „Datei“ festgelegt werden, das Attribut „Name“ kann jedoch angepasst werden. Dieser Wert wird in der Codedatei verwendet.

<?php
    print_r($_FILES);?>

Super globale Variable $_FILES, die verschiedene Upload-bezogene Informationen speichert, die für Dateien, die über PHP-Skripte auf den Server hochgeladen werden, von entscheidender Bedeutung sind.
1. Der in der Variablen

_FILES["file"]["name"] gespeicherte Wert ist der Dateiname im Benutzersystem.
3. Der in der Variablen _FILES["file"]["type"] gespeicherte Wert ist der MIME-Typ der Datei, zum Beispiel: text/plain oder image/gif.
5. Der in der Variablen $_FILES["file"]["error"] gespeicherte Wert ist ein beliebiger Fehlercode im Zusammenhang mit dem Datei-Upload. Dies ist eine neue Funktion, die in PHP4.2.0 hinzugefügt wurde.
error stellt jeweils einige Array-Konstanten bereit:
+ 0: Zeigt an, dass kein Fehler aufgetreten ist.
+ 1: Zeigt an, dass die Größe der hochgeladenen Datei den vereinbarten Wert überschreitet. Die maximale Dateigröße wird in der PHP-Konfigurationsdatei angegeben, die Direktive lautet upload_max_filesize.
+ 2: Zeigt an, dass die hochgeladene Dateigröße den durch das Element MAX_FILE_SIZE des HTML-Formulars angegebenen Maximalwert überschreitet.
+ 3: Zeigt an, dass die Datei nur teilweise hochgeladen wurde.
+ 4: Zeigt an, dass keine Dateien hochgeladen werden.

3> Upload-Funktion
PHP bietet außerdem zwei Funktionen speziell für den Datei-Upload-Prozess: is_uploaded_file() und move_uploaded_file().

//确定是否上传文件if (is_uploaded_file($_FILES["file"]["tmp_name"])) {    echo '已经上传到临时文件夹';    $filename = "upload".time()."png";    //移动上传文件(将文件移动到指定文件夹)
    if (!move_uploaded_file($_FILES["file"]["tmp_name"],img/,$filename)) {        echo '移动失败';        exit;
    }else{        echo "移动成功";
    }
} else {    echo '失败';
}

2. Dateiverzeichnis

Organisieren Sie verwandte Daten in Entitäten wie Dateien und Verzeichnissen Standort, Größe, Zeitpunkt der letzten Änderung, Zeitpunkt des letzten Zugriffs und andere identifizierende Informationen.
1>Verzeichnisoperation
+ Aktuellen Dateipfad abrufen
1. __FILE__
Aktueller Dateipfad + aktueller Dateiname
2. __DIR__
Aktueller Dateipfad
3. Verzeichnisname ( __FILE__)
   Aktueller Dateipfad
  4. basename(__FILE__)
  Aktueller Dateiname
  5. pathinfo(__FILE__)
  Assoziatives Array von Informationen über den Pfad, einschließlich: Verzeichnisname, Basis Name und Erweiterung
6. realpath(__FILE__)
Absoluter Pfad (der absolute Pfad kann nur ermittelt werden, wenn die Datei tatsächlich im aktuellen Projekt vorhanden ist und nur die entsprechenden Dateipfadinformationen in der aktuellen Datei gelesen werden können)

__FILE__ und __DIR__ gelten für die aktuelle Datei, dinrname() und basename() gelten für jeden Dateipfad

2> Berechnung der Datenträger-, Verzeichnis- und Dateigröße
1. Dateigröße
Dateigröße($path)
Berechnen Sie die Dateigröße in Bytes.

$file = __FILE__;echo round(filesize($file)/1024).'KB';
  1. Größe des freien Speicherplatzes der Festplatte
    disk_free_space()
    Der freie Speicherplatz der Festplattenpartition, auf der sich das angegebene Verzeichnis befindet.

$drive = 'C:';echo round(disk_free_space($drive)/1024/1024/1024,2).'GB';
  1. 磁盘的总容量
     disk_total_space()
     指定的目录所在磁盘分区的总容量。

$drive = 'C:';echo round(disk_total_space($drive)/1024/1024/1027,2).'GB';

相关推荐:

php文件上传简单实例分享

php文件上传类及PHP封装的多文件上传类分享

HTML5 Ajax文件上传进度条如何显示

Das obige ist der detaillierte Inhalt vonGrundlegende Einführung in das Hochladen von PHP-Dateien. 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