🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
用form表单结合php进行文件上传之前,首先得配置一下php.ini里边的参数,具体如下: 1、打开网站上传的功能(file_uploads = On); 2、文件上传后存储的位置(临时存储位置:upload_tmp_dir = "D:/wamp/tmp"); 3、上传文件的大小限制(upload_max_filesize = 2M); 4、脚本运行的最大时间(max_execution_time = 30); 5、脚本运行所占用的内存大小(memory_limit = 128M)。 以上几个参数都是根据自己网站的实际情况来配置的,如果要上传视频文件,那么各项参数可能就需要调大一些,如果只是一些很小的文本文件,则参数可相应的调小。 测试代码如下: <form action="test.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="1000000" /> <input type="file" name="file" value="" /> <input type="submit" value="上传文件" /> </form> <!--隐藏域表单一定要放在最前边才会起作用--> php部分: echo '<pre>'; print_r($_FILES); 点击【上传文件】按钮之后,页面跳转到test.php,最后输出结果如下: /* Array ( [file] => Array ( [name] => jquery面试题.jpg [type] => image/jpeg [tmp_name] => D:\wamp\tmp\php72F4.tmp [error] => 0 [size] => 343109 ) ) */ 可以看出这个一个数组,我们用$_FILE即可打印出用户提交的文件信息,其中: 【name】:上传的文件名; 【type】:上传的文件类型; 【tmp_name】:上传的临时路径(当脚本执行完毕之后,这个临时文件会自动删除,所以临时文件在被自动删除之前,需要把这个文件移动到指定的文件夹里边,下一节会讲到移动的方法); 【error】;错误提示,分为以下几部分: (1)0:没任何错误; (2)1:文件大小超过了php.ini配置文件中定的大小; (3)2:文件大小超过了前台表单设定的文件大小(MAX_FILE_SIZE); (4)3:只上传了文件的一部分; (5)4:没有上传任何文件。 【size】:上传文件的大小,单位是字节。