Heim > Backend-Entwicklung > PHP-Tutorial > PHP-Datei-Upload (implementiert mit dem globalen Array $_FILES)

PHP-Datei-Upload (implementiert mit dem globalen Array $_FILES)

little bottle
Freigeben: 2023-04-06 08:08:01
nach vorne
3494 Leute haben es durchsucht

In diesem Artikel geht es hauptsächlich um die Verwendung des globalen Arrays $_FILES zum Implementieren des Datei-Uploads. Interessierte Freunde können mehr darüber erfahren.

Das globale PHP-Array $_FILES wird hier verwendet, um das Hochladen von Dateien zu implementieren:

  • $_FILES["file"]["name"] – die hochgeladene Datei Dateiname
  • $_FILES["file"]["type"] – Der Typ der Datei, die hochgeladen wird
  • $_FILES["file"][ " size"] – Die Größe der hochgeladenen Datei in Bytes
  • $_FILES["file"]["tmp_name"] – Eine temporäre Kopie der gespeicherten Datei auf dem Server Name von
  • $_FILES["file"]["error"] - Fehlercode verursacht durch Datei-Upload

HTML-Code:

<form action="upload_file.php" method="post" enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file" id="file" /><br />
    <input type="submit" name="submit" value="Submit" /></form>
Nach dem Login kopieren

PHP-Code:

if (!empty($_FILES)) { 
    // 限制文件大小
    $file_size = $_FILES["file"]["size"];    // 限制2M大小
    if ($file_size > 1024 * 1024 * 2) {        echo &#39;文件大小超过限制&#39;;        exit;
    } 
    // 限制文件上传类型
    $file_type = $_FILES["file"]["type"];    $file_type_arr = [&#39;image/jpg&#39;, &#39;image/jpeg&#39;, &#39;image/png&#39;, &#39;image/pjpeg&#39;, &#39;image/gif&#39;];    if (!in_array($file_type, $file_type_arr)) {        echo &#39;上传文件类型错误&#39;;        exit;
    } 
    // 文件上传到服务器临时文件夹之后的文件名
    $tem_name = $_FILES[&#39;file&#39;][&#39;tmp_name&#39;];    // 取得文件后缀名
    $file_fix = explode(&#39;.&#39;, $_FILES[&#39;file&#39;][&#39;name&#39;])[1] ? explode(&#39;.&#39;, $_FILES[&#39;file&#39;][&#39;name&#39;])[1] : &#39;png&#39;;    // 文件重命名,这里自动生成一个不重复的名字,方便使用
    $name = md5(uniqid(md5(microtime(true)), true)) . &#39;.&#39; . $file_fix;    // 要存放文件的目录定义,这里按日期分开存储
    $file_dir = dirname(__FILE__) . &#39;/upload/&#39; . date(&#39;Ymd&#39;) . &#39;/&#39;;    // 检测要存放文件的目录是否存在,不存在则创建
    if (!is_dir($file_dir)) {        mkdir($file_dir, 0755, true);
    }    // 移动文件到指定目录下
    @ move_uploaded_file($tem_name, $file_dir . $name); 
    echo &#39;上传成功&#39;;    exit;
} else {    echo &#39;文件上传失败&#39;;    exit;
}
Nach dem Login kopieren

Verwandte Tutorials: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonPHP-Datei-Upload (implementiert mit dem globalen Array $_FILES). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage