查看: 2386|回复: 0

[PHP学习] PHP实现文件上传功能实例代码

发表于 2018-3-31 08:00:03

点击浏览,将所选的文件上传到创建的images文件夹内

代码如下:

1.wenjian.php

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>无标题文档</title>
  6. </head>
  7. <body>
  8. <h1>上传文件</h1>
  9. <form action="chuli.php" method="post" enctype="multipart/form-data">
  10. 请选择文件:<input type="file" name="file" /><input type="submit" value="上传" />
  11. </form>
  12. </body>
  13. </html>
复制代码

2.chuli.php

  1. <?php
  2. //取文件信息
  3. $arr = $_FILES["file"];
  4. //var_dump($arr);
  5. //加限制条件
  6. //1.文件类型
  7. //2.文件大小
  8. //3.保存的文件名不重复
  9. if(($arr["type"]=="image/jpeg" || $arr["type"]=="image/png" ) && $arr["size"]<10241000 )
  10. {
  11. //临时文件的路径
  12. $arr["tmp_name"];
  13. //上传的文件存放的位置
  14. //避免文件重复:
  15. //1.加时间戳.time()加用户名.$uid或者加.date('YmdHis')
  16. //2.类似网盘,使用文件夹来防止重复
  17. $filename = "./images/".date('YmdHis').$arr["name"];
  18. //保存之前判断该文件是否存在
  19. if(file_exists($filename))
  20. {
  21. echo "该文件已存在";
  22. }
  23. else
  24. {
  25. //中文名的文件出现问题,所以需要转换编码格式
  26. $filename = iconv("UTF-8","gb2312",$filename);
  27. //移动临时文件到上传的文件存放的位置(核心代码)
  28. //括号里:1.临时文件的路径, 2.存放的路径
  29. move_uploaded_file($arr["tmp_name"],$filename);
  30. }
  31. }
  32. else
  33. {
  34. echo "上传的文件大小或类型不符";
  35. }
复制代码

以上所述是小编给大家介绍的PHP实现文件上传功能实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对程序员之家网站的支持!



回复

使用道具 举报