ホームページ > バックエンド開発 > PHPチュートリアル > PHP は一時ディレクトリへのファイルのアップロードを実装します

PHP は一時ディレクトリへのファイルのアップロードを実装します

王林
リリース: 2023-04-08 12:38:01
オリジナル
5283 人が閲覧しました

PHP は一時ディレクトリへのファイルのアップロードを実装します

フォームを通じて実装すると、ファイルは一時ディレクトリにアップロードされます。アップロード プロセスを制御する必要はありません。ファイルをディレクトリに移動するだけで済みます。私たちは望んでいます。

具体的な方法は次のとおりです:

1. PHP 設定ファイルを変更します

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

注: 設定ファイルを変更した後、サーバーを再起動します。

(関連する学習ビデオの共有: php ビデオ チュートリアル )

2. $_FILES 多次元配列、さまざまなアップロード関連情報の保存に使用されます

$_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类型由‘/’分隔主类型和子类型组成
ログイン後にコピー

3. PHP ファイルアップロード処理関数

is_uploaded_file()      //判断指定的文件是否通过HTTP POST上传的
move_uploaded_file()    //文件上传后先存储于服务器的临时目录中,使用该函数移动文件位置
ログイン後にコピー

例:

<?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>
ログイン後にコピー

結果は図のようになります:

PHP は一時ディレクトリへのファイルのアップロードを実装します

おすすめの関連記事とチュートリアル: php チュートリアル

以上がPHP は一時ディレクトリへのファイルのアップロードを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート