随笔 - 434,  文章 - 0,  评论 - 463,  阅读 - 46万

22. PHP文件上传

22.1 资源文件


将这三个东西拷贝项目的根目录。

拷贝完毕后,打开upload.html:


现在,我们在项目的根目录去编写一个upload.php。

PHP给我们提供了很多关于文件上传的预定义变量,比如,上传的文件名称,文件大小,文件的类型等。

以下的up_file 就是form表单中文件框的name

22.2 如何修改文件上传的大小限制

打开xampp的安装目录,在目录中搜索php.ini的配置文件。


打开php.ini , 搜索upload_max:

再搜索post_max:

接着,重启服务器。

22.3 更改文件大小的名称

	function getSize($fileSize){
		if($fileSize < 1024){
			$fileSize = $fileSize . "B";
		}else if($fileSize < 1024 * 1024){
			$fileSize = round($fileSize / 1024,2) . "KB";
		}else if($fileSize < 1024 * 1024 * 1024){
			$fileSize = round($fileSize / 1024 / 1024,2) . "MB";
		}else if($fileSize < 1024 * 1024 * 1024 * 1024){
			$fileSize = round($fileSize / 1024 / 1024 / 1024 , 2) . "GB";
		}

		return $fileSize;
	}

22.4 文件上传

在PHP中,文件上传的时候会默认上传到一个临时目录,上传完毕后,如果没有及时把上传的文件从临时目录拷贝到上传的文件夹,临时文件就会被删除。

所以,当文件上传成功以后,我们一定要及时地把临时拷贝到上传目录。

	$temp = $_FILES["up_file"]["tmp_name"];
	move_uploaded_file($temp,"upload/" . time() . "_" .  $_FILES["up_file"]["name"]);

	echo "上传成功!";

同时,为了解决同名文件的覆盖问题,我们最好给上传的文件名改一下名字,在文件名的前面添加一个时间戳即可。

如果上传的文件是一个图片,那么,在上传成功的页面中,把上传好的图片显示在页面上,让用户知道自己上传的是什么图片。

$des = "upload/" . time() . "_" .  $_FILES["up_file"]["name"];
	$temp = $_FILES["up_file"]["tmp_name"];
	move_uploaded_file($temp,$des);

	echo "上传成功!<br>";
//先判断是不是图片?
	if(strstr($_FILES["up_file"]["type"], "image")){
		//如果是图片的话,就把上传好的图片显示在页面上
		echo "<image src='".$des."' width='360px' />";
	}

源码获取:https://www.jianshu.com/p/4977bd0073d5

posted on   剽悍一小兔  阅读(314)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示