Heim > Backend-Entwicklung > PHP-Tutorial > PHP implementiert das Hochladen von Dateien in ein temporäres Verzeichnis

PHP implementiert das Hochladen von Dateien in ein temporäres Verzeichnis

王林
Freigeben: 2023-04-08 12:38:01
Original
5278 Leute haben es durchsucht

PHP implementiert das Hochladen von Dateien in ein temporäres Verzeichnis

Über das -Formular wird die Datei in ein temporäres Verzeichnis hochgeladen. Wir müssen den Upload-Vorgang nicht steuern wir wünschen.

Die spezifische Methode ist wie folgt:

1. Ändern Sie die PHP-Konfigurationsdatei

file_uploads//服务器上的PHP脚本是否可以接受HTTP文件上传
 
memory_limit//设置脚本可以分配的最大内存量,防止失控脚本独占服务器内存
 
upload_max_filesize//限制PHP处理上传文件的最大值,此值必须小于post_max_size值
 
 post_max_size//限制通过POST方法可以接受的信息最大量
 
upload_tmp_dir //上传文件存放的临时路径,可以是绝对路径。这个目录对于拥有此服务器进程用户必须是可写的。
Nach dem Login kopieren

Hinweis: Starten Sie den Server neu, nachdem Sie die Konfigurationsdatei geändert haben.

(Verwandte Lernvideofreigabe: PHP-Video-Tutorial)

2. $_FILES mehrdimensionales Array, das zum Speichern verschiedener Upload-bezogener Informationen verwendet wird

$_FILES[‘file’][‘name’]        //客户端上传的文件原名称,含扩展名
$_FILES[‘file’][‘size’]          //已上传文件的大小,单位为字节
$_FILES[‘file][‘tmp_name’]        //文件上传后,在服务器端存储的临时文件名
$_FILES[‘file][‘error’]          //文件上传时产生的错误
                                     0:文件上传成功
                                     1:上传文件的大小超出了在PHP配置文件中upload_max_filesize选项限制的值
                                     2:上传文件大小超出了HTML表单中MAX_FILE_SIZE选项指定的值
                                     3:文件只被部分上传
                                     4:没有上传任何文件
$_FILES[‘file’][‘type’]        //上传文件的类型,每种MIME类型由‘/’分隔主类型和子类型组成
Nach dem Login kopieren

3. PHP-Datei-Upload-Verarbeitungsfunktion

is_uploaded_file()      //判断指定的文件是否通过HTTP POST上传的
move_uploaded_file()    //文件上传后先存储于服务器的临时目录中,使用该函数移动文件位置
Nach dem Login kopieren

Beispiel:

<?php
    header(&#39;Content-type:text/html;charset=utf-8&#39;);
    //判断客户端是否有提交动作
    if(isset($_POST[&#39;submit&#39;])){
        //判断文件是否通过HTTP POST上传的
        if(is_uploaded_file($_FILES[&#39;myfile&#39;][&#39;tmp_name&#39;])){
            //用于服务器端显示客户端上传文件的后缀名.返回值是一个数组
            $arr=pathinfo($_FILES[&#39;myfile&#39;][&#39;name&#39;]);
            //以年 月 日的格式命名客户端上传的文件名并随机产生一个数,避免名字相同
            $newName=date(&#39;YmdGis&#39;).rand(1000,99999);
            if(move_uploaded_file($_FILES[&#39;myfile&#39;][&#39;tmp_name&#39;],"C:/123/{$newName}.{$arr[&#39;extension&#39;]}")){
                echo &#39;成功&#39;;
            }else{
                echo &#39;失败&#39;;
            }
        }else{
            exit(&#39;....&#39;);
        }
    }
    var_dump($_FILES);
?>
<DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>文件上传</title>
</head>
<body>
    <form method="post" action="" enctype="multipart/form-data">
    <input type="file" name="myfile"/>
    <input type="submit" name="submit" value="开始上传"/>
    </form>
</body>
</html>
Nach dem Login kopieren

Das Ergebnis ist wie in der Abbildung dargestellt:

PHP implementiert das Hochladen von Dateien in ein temporäres Verzeichnis

Empfohlene verwandte Artikel und Tutorials: PHP-Tutorial

Das obige ist der detaillierte Inhalt vonPHP implementiert das Hochladen von Dateien in ein temporäres Verzeichnis. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
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