麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > PHP > 正文

PHP文件上傳之多文件上傳的實現(xiàn)思路

2024-05-04 23:42:37
字體:
供稿:網(wǎng)友
這篇文章主要介紹了PHP文件上傳之多文件上傳的實現(xiàn)思路的相關(guān)資料,需要的朋友可以參考下
 

多文件上傳的兩種情況

①使用多個name值

<input type="file" name="file1"><input type="file" name="file2"><input type="file" name="file3"><input type="file" name="file4">

a.點擊提交之后接收到的數(shù)據(jù)格式

Array([file1] => Array([name] => 8.png[type] => image/png[tmp_name] => G:/wamp/tmp/php737.tmp[error] => 0[size] => 200)[file2] => Array([name] => 28.png[type] => image/png[tmp_name] => G:/wamp/tmp/php738.tmp[error] => 0[size] => 6244)[file3] => Array([name] => 54a296f8n6787b34c.png[type] => image/png[tmp_name] => G:/wamp/tmp/php739.tmp[error] => 0[size] => 3143)[file4] => Array([name] => 54c0573dncb4db6f7.jpg[type] => image/jpeg[tmp_name] => G:/wamp/tmp/php788.tmp[error] => 0[size] => 5404))

從這種格式可以看出來,每一個文件對應(yīng)一個數(shù)組單元

所以使用foreach遍歷數(shù)組,并對每個數(shù)組單元進行文件上傳函數(shù)調(diào)用

b.點擊提交后的操作

①接收上傳的文件信息

$file = $_FILES;

②引入上傳函數(shù)

include('./functions.php');

③設(shè)置文件保存路徑

$path = './uploads/'; // 此目錄需要手動創(chuàng)建

④調(diào)用文件上傳函數(shù)

foreach($file as $v){$info = uploadFile($v,$path);⑤判斷上傳狀態(tài)if($info['isok']){echo '上傳成功'.$info['message'];} else {echo '上傳失敗'.$info['message'];}}

---------------------------------------------------------------

②使用單個name值

a.第一種寫法

<input type='file' name="file[]"><input type='file' name="file[]"><input type='file' name="file[]">

b.第二種寫法

<input type="file" name="file[]" multiple>

c.點擊提交之后,接收到的數(shù)據(jù)格式

Array([userpic] => Array([name] => Array([0] => 8.png[1] => 9b2d7581fba543ec9bcf95e91018915a.gif[2] => 12.jpg)[type] => Array([0] => image/png[1] => image/gif[2] => image/jpeg)[tmp_name] => Array([0] => G:/wamp/tmp/php85E5.tmp[1] => G:/wamp/tmp/php85E6.tmp[2] => G:/wamp/tmp/php8635.tmp)[error] => Array([0] => 0[1] => 0[2] => 0)[size] => Array([0] => 200[1] => 16503[2] => 19443)))

從這種格式可以看出來,是將上傳的文件信息分開保存到每個下標(biāo)中。
所以要做的事情就是拼接出來一個完整的文件信息,一個一維數(shù)組

Array([name] => 54c0573dncb4db6f7.jpg[type] => image/jpeg[tmp_name] => G:/wamp/tmp/php788.tmp[error] => 0[size] => 5404)

所以要進行的操作,是遍歷$_FILES['file'] 然后從中取出每條上傳文件的信息

d.點擊提交后的操作

①接收上傳的文件信息

$file = $_FILES['file'];

②引入上傳函數(shù)

include('./functions.php');

③設(shè)置文件保存路徑

$path = './uploads/'; // 此目錄需要手動創(chuàng)建

④調(diào)用文件上傳函數(shù)

foreach($file['name'] as $key=>$value){$data['name'] = $file['name'][$key];$data['type'] = $file['type'][$key];$data['tmp_name'] = $file['tmp_name'][$key];$data['error'] = $file['error'][$key];$data['size'] = $file['size'][$key];$info = uploadFile($data,$path);

⑤判斷上傳狀態(tài)

if($info['isok']){echo '上傳成功'.$info['message'];} else {echo '上傳失敗'.$info['message'];}}

a.遍歷$file['name'] 只是為了獲取$key

b.每遍歷一次,取出相對應(yīng)下標(biāo)的文件信息,賦值給一個新數(shù)組中對應(yīng)的鍵

如第一次 $key = 0;

$data['name'] = $file['name'][0]; // 相當(dāng)于取出了第一個文件的名字$data['type'] = $file['type'][0]; // 相當(dāng)于取出了第一個文件的類型

...

第一次遍歷完成之后

$data = array([name] => 54c0573dncb4db6f7.jpg[type] => image/jpeg[tmp_name] => G:/wamp/tmp/php788.tmp[error] => 0[size] => 5404);

這樣就取出了第一個文件的所有信息

然后調(diào)用上傳函數(shù),進行文件上傳處理

第二次遍歷時$key=1,相當(dāng)于獲取第二個上傳文件的信息



注:相關(guān)教程知識閱讀請移步到PHP教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产一级一片免费播放 | 88xx成人精品视频 | 91精品国产乱码久久久久久久久 | 亚洲婷婷日日综合婷婷噜噜噜 | 国产成年人视频 | 亚洲一区二区三区四区精品 | 成人福利视频在 | 91小视频在线观看免费版高清 | 国产精品欧美久久久久一区二区 | 2021狠狠操 | 久久久久久久久久久国产精品 | 中文国产在线视频 | 99国产精品自拍 | 亚洲天堂午夜 | 一区二区精品视频 | 九九热视频这里只有精品 | 色婷婷久久久久久 | 国产精品高潮视频 | av免费在线免费观看 | 在线播放免费视频 | www.91视频com| 久久精品中文字幕 | 九九福利视频 | 日韩av电影免费在线观看 | 免费h片网站 | 日本在线看 | 久草手机视频在线观看 | 欧美一级免费看 | 国产一国产一级毛片视频在线 | 日本高清com | 久久区二区 | 91网站免费观看 | 精品亚洲二区 | 天天干导航 | 爱爱插插视频 | 欧美成人精品一区二区三区 | 欧美一级鲁丝片免费看 | 精品一区二区在线观看视频 | 午夜a狂野欧美一区二区 | 国产精品久久久久久久久久久天堂 | 亚洲国产在 |