如何使用 PHP 上传多个文件并将其存储在文件夹中?
以下是上传多个文件并将它们存储在文件夹中的步骤 -
- 输入名称必须定义为一个数组,即 name="inputName[]"
- 输入元素应具有 multiple="multiple" 或仅 multiple
- 在 PHP 文件中,使用语法 "$_FILES['inputName']['param'][index]"
- 必须检查空文件名称和路径,因为该数组可能包含空字符串。为了解决此问题,请在 count 前使用 array_filter()。
以下是代码的演示 -
HTML
<input name="upload[]" type="file" multiple="multiple" />
PHP
$files = array_filter($_FILES['upload']['name']); //Use something similar before processing files. // Count the number of uploaded files in array $total_count = count($_FILES['upload']['name']); // Loop through every file for( $i=0 ; $i < $total_count ; $i++ ) { //The temp file path is obtained $tmpFilePath = $_FILES['upload']['tmp_name'][$i]; //A file path needs to be present if ($tmpFilePath != ""){ //Setup our new file path $newFilePath = "./uploadFiles/" . $_FILES['upload']['name'][$i]; //File is uploaded to temp dir if(move_uploaded_file($tmpFilePath, $newFilePath)) { //Other code goes here } } }
列出文件,并将需要上传的文件数计数存储在 total_count 变量中。创建临时文件路径,并迭代地将每个文件放入包含文件夹的此临时路径中。
广告