1、php.ini ファイルを設定します
主に次の属性値を設定します:
2、事前定義された変数
リストは次のとおりです:
アップロード ドメインを作成し、_FILES を介してアップロードを出力します変数ファイルの情報。サンプルコードは次のとおりです:
<form action="" enctype="multipart/form-data" method="post" name="uploadfile">上传文件:<input type="file" name="upfile" /><br> <input type="submit" value="上传" /></form> <?php if (is_uploaded_file($_FILES['upfile']['tmp_name'])) { $upfile =$_FILES["upfile"]; foreach ($upfile as $value) { echo $value."<br>"; } } ?>
実行結果は次のとおりです:
3、ファイルアップロード関数
ファイルをアップロードするには、php の move_uploaded_file() 関数を使用します。構文は次のとおりです:
bool move_uploaded_file( string filename,string destination)
この関数は、ファイルのアップロードを指定された場所に移動し、成功した場合は true を返し、失敗した場合は false を返します。パラメータ filename は一時ファイル名、つまり $_FILE[tmp_name] です。パラメータ destination はアップロード後に保存された新しいパスと名前です。
サンプルコードは次のとおりです:
<form action="" enctype="multipart/form-data" method="post" name="uploadfile">上传文件:<input type="file" name="upfile" /><br> <input type="submit" value="上传" /></form> <?php if (is_uploaded_file($_FILES['upfile']['tmp_name'])) { $upfile =$_FILES["upfile"]; if (move_uploaded_file($upfile['tmp_name'], $upfile['name'])) { echo "上传成功"; }else{ echo "上传失败"; }}?>
実行結果は次のとおりです:
4. 複数ファイルのアップロード
以下では、複数ファイルのアップロードをベースに進化させます。単一ファイルのアップロード時。コード例は次のとおりです:
<form action="index.php" enctype="multipart/form-data" method="post" name="uploadfile">上传文件:<br> <input type="file" name="upfile1" /><br> <input type="file" name="upfile2" /><br> <input type="file" name="upfile3" /><br> <input type="submit" value="上传" /><br> </form> <?php // header('Content-Type:text/html;charset=utf-8'); $file1 =$_FILES['upfile1']; $file2 =$_FILES['upfile2']; $file3 =$_FILES['upfile3']; if ($file1['error'] == UPLOAD_ERR_OK){ echo "路径:".$file1['name']."<br>"; if (move_uploaded_file($file1['tmp_name'], $file1['name'])) { echo "上传成功<br>"; }else{ echo "上传失败<br>"; } } if ($file2['error'] == UPLOAD_ERR_OK){ echo "路径:".$file2['name']."<br>"; if (move_uploaded_file($file2['tmp_name'], $file2['name'])) { echo "上传成功<br>"; }else{ echo "上传失败<br>"; } } if ($file3['error'] == UPLOAD_ERR_OK){ echo "路径:".$file3['name']."<br>"; if (move_uploaded_file($file3['tmp_name'], $file3['name'])) { echo "上传成功<br>"; }else{ echo "上传失败<br>"; } } ?>
実行結果は次のとおりです:
複数ファイルのアップロードの 2 番目のメソッドのコード例は次のとおりです:
<form action="index.php" enctype="multipart/form-data" method="post" name="uploadfile">上传文件:<br> <input type="file" name="upfile[]" /><br><input type="file" name="upfile[]" /><br><input type="file" name="upfile[]" /><br><input type="submit" value="上传" /><br> </form> <?php // header('Content-Type:text/html;charset=utf-8'); $filearray =$_FILES['upfile']; print_r($filearray); foreach ($filearray['error'] as $key =>$error) { if ($error==UPLOAD_ERR_OK) { echo "文件名:".$filearray['name'][$key]."<br>"; if (move_uploaded_file($filearray['tmp_name'][$key], $filearray['name'][$key])) { echo "上传成功<br>"; }else{ echo "上传失败<br>"; } } } ?>
実行結果は次のとおりです:
上記の 2 つに加えて、さらに 3 つ目の方法があります。もちろん、個別のファイルをアップロードする方法は、私の意見では最も完璧な方法です。つまり、一度に複数のファイルを選択してアップロードできます。主に swfupload を使用して実現されます。私の現在の知識は限られているので、後で皆さんと一緒に学びます。