多文件上传的两种情况
①使用多个name值
<input type="file" name="file1"> <input type="file" name="file2"> <input type="file" name="file3"> <input type="file" name="file4">
a.点击提交之后接收到的数据格式
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 ) )
从这种格式可以看出来,每一个文件对应一个数组单元
所以使用foreach遍历数组,并对每个数组单元进行文件上传函数调用
b.点击提交后的操作
①接收上传的文件信息
$file = $_FILES;
②引入上传函数
include('./functions.php');
③设置文件保存路径
$path = './uploads/'; // 此目录需要手动创建
④调用文件上传函数
foreach($file as $v){ $info = uploadFile($v,$path); ⑤判断上传状态 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.点击提交之后,接收到的数据格式
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 ) ) )
从这种格式可以看出来,是将上传的文件信息分开保存到每个下标中。
所以要做的事情就是拼接出来一个完整的文件信息,一个一维数组
Array( [name] => 54c0573dncb4db6f7.jpg [type] => image/jpeg [tmp_name] => G:\wamp\tmp\php788.tmp [error] => 0 [size] => 5404 )
所以要进行的操作,是遍历$_FILES['file'] 然后从中取出每条上传文件的信息
d.点击提交后的操作
①接收上传的文件信息
$file = $_FILES['file'];
②引入上传函数
include('./functions.php');
③设置文件保存路径
$path = './uploads/'; // 此目录需要手动创建
④调用文件上传函数
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);
⑤判断上传状态
if($info['isok']){ echo '上传成功'.$info['message']; } else { echo '上传失败'.$info['message']; } }
a.遍历$file['name'] 只是为了获取$key
b.每遍历一次,取出相对应下标的文件信息,赋值给一个新数组中对应的键
如第一次 $key = 0;
$data['name'] = $file['name'][0]; // 相当于取出了第一个文件的名字 $data['type'] = $file['type'][0]; // 相当于取出了第一个文件的类型
...
第一次遍历完成之后
$data = array( [name] => 54c0573dncb4db6f7.jpg [type] => image/jpeg [tmp_name] => G:\wamp\tmp\php788.tmp [error] => 0 [size] => 5404 );
这样就取出了第一个文件的所有信息
然后调用上传函数,进行文件上传处理
第二次遍历时$key=1,相当于获取第二个上传文件的信息
php文件上传,php多文件上传
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】
- 谭咏麟.2022-倾·听【环球】【WAV+CUE】
- 4complete《丛生》[320K/MP3][85.26MB]
- 4complete《丛生》[FLAC/分轨][218.01MB]
- 羽泉《给未来的你&天黑天亮》[WAV+CUE][968M]
- 庄心妍《我也许在等候》[低速原抓WAV+CUE]
- 王雅洁《小调歌后2》[原抓WAV+CUE]