博客列表 >文件/批量文件上传

文件/批量文件上传

手机用户1580651468
手机用户1580651468原创
2022年12月12日 15:19:13687浏览

一. 文件/批量文件上传

一)单个文件上传

1.单个文件上传代码

  1. <?php
  2. // printf('<pre>%s</pre>',print_r($_FILES,true));
  3. // 遍历:有多少个文件上传
  4. $imgs = [];
  5. foreach ($_FILES as $file) {
  6. printf('<pre>%s</pre>',print_r($_FILES,true));
  7. if($file['error']==0){
  8. if(strstr($file['type'],'/',true)!=='image'){
  9. $tips = '文件类型错误';
  10. // echo $tips;
  11. continue;
  12. }
  13. else{
  14. //创建目标文件名,只要保证不重名 $targetName='uploads/'.md5($file['name']).strstr($file['name'],'.'); if(!move_uploaded_file($file['tmp_name'],$targetName)){
  15. $tips = '文件上传失败';
  16. }else{
  17. $imgs[]=$targetName;
  18. }
  19. }
  20. }
  21. }
  22. ?>

2.单个文件上传效果图


二).多个文件上传

1.多个文件上传代码

  1. <?php
  2. // printf('<pre>%s</pre>',print_r($_FILES,true));
  3. // 遍历:有多少个文件上传
  4. $imgs = [];
  5. if(!isset($_FILES['my_pic'])){
  6. $tips='没有文件上传';
  7. }
  8. else{
  9. foreach ($_FILES['my_pic']['error'] as $key=>$error) {
  10. if($error==0){
  11. $file =$_FILES['my_pic'];
  12. if(strstr($file['type'][$key],'/',true)!=='image'){
  13. $tips = '文件类型错误';
  14. // echo $tips;
  15. continue;
  16. }
  17. else{
  18. //创建目标文件名,只要保证不重名
  19. $targetName='uploads/'.md5($file['name'][$key]).strstr($file['name'][$key],'.');
  20. if(!move_uploaded_file($file['tmp_name'][$key],$targetName)){
  21. $tips = '文件上传失败';
  22. }else{
  23. $imgs[]=$targetName;
  24. }
  25. }
  26. }
  27. elseif($error==1){
  28. }
  29. }
  30. }
  31. ?>
  32. <!DOCTYPE html>
  33. <html lang="en">
  34. <head>
  35. <meta charset="UTF-8">
  36. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  37. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  38. <title>文件上传</title>
  39. </head>
  40. <body>
  41. <!-- 1.action:空,表示提交到当前的页面
  42. 2.method:post
  43. 3.enctype="multipart/form-data"
  44. -->
  45. <form action="" method="post" enctype="multipart/form-data" >
  46. <fieldset>
  47. <legend>文件批量上传</legend>
  48. <input type="file" name="my_pic[]" multiple>
  49. <button>上传</button>
  50. </fieldset>
  51. </form>
  52. <?php if(isset($tips)): ?>
  53. <?=$tips?>
  54. <?php elseif(count($imgs)>0) : ?>
  55. <?php foreach($imgs as $img) : ?>
  56. <img src="<?=$img?>" width="200" />
  57. <?php endforeach;?>
  58. <?php endif ?>
  59. </body>
  60. </html>

2.多个文件上传效果图

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议