• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

PHP文件操作功能函数大全

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

PHP文件操作功能函数大全

<?php
	/* 转换字节大小 */
	function transByte($size){
		$arr=array("B","KB","MB","GB","TB","EB");
		$i=0;
		while($size>=1024){
			$size/=1024;
			$i++;
		}
		return round($size,2).$arr[$i];
	}

	/* 检测文件名称是否合法 */
	function checkFilename($filename){
		$pattern = "/[\/,\*,<>,\?\|]/";
		if(preg_match($pattern,$filename)){
			return false;
		}else{
			return true;
		}
	}
	
	/* 创建文件 */
	function createFile($filename){
		if(checkFilename($filename)){
			//检测当前目录下是否存在同名的文件
			if(!file_exists($filename)){
				//通过touch($filename)来创建
				if(touch($filename)){
					$mes="文件创建成功";
				}else{
					$mes="文件创建失败";
				}
			}else{
				$mes="文件已经存在,请重新命名后创建";
			}
		}else{
			$mes="非法文件名";
		}
		return $mes;
	}
	
	/* 重命名文件 */
	function renameFile($oldname,$newname){
		//验证文件名的合法性
		if(checkFilename($newname)){
			//检测当前目录下是否存在同名的文件
			$path=dirname($oldname);
			if(!file_exists($path."/".$newname)){
				//进行重命名
				if(rename($oldname,$path."/".$newname)){
					$mes="重命名成功";
				}else{
					$mes="重命名失败";
				}
			}else{
				$mes="存在同名文件,请重新命名";
			}
		}else{
			return $mes="非法文件名";
		}
		return $mes;
	}

	/* 删除文件 */
	function delFile($filename){
		if(unlink($filename)){
			$mes="文件删除成功";
		}else{
			$mes="文件删除失败";
		}
		return $mes;
	}

	/* 下载文件操作 */
	function downFile($filename){
		header("Content-disposition:attachment;filename=".basename($filename));
		header("Content-length:".filesize($filename));
		readfile($filename);
	}
	
	/* 复制文件 */
	function copyFile($filename,$dstname){
		if(file_exists($dstname)){
			if(!file_exists($dstname."/".basename($filename))){
				if(copy($filename,$dstname."/".basename($filename))){
					$mes="文件复制成功";
				}else{
					$mes="文件复制失败";
				}
			}else{
				$mes="存在同名文件";
			}
		}else{
			$mes="目标目录不存在";
		}
		return $mes;
	}
	
	/* 剪切文件 */
	function cutFile($filename,$dstname){
		if(file_exists($dstname)){
			if(!file_exists($dstname."/".basename($filename))){
				if(rename($filename,$dstname."/".basename($filename))){
					$mes="文件剪切成功";
				}else{
					$mes="文件剪切失败";
				}
			}else{
				$mes="存在同名文件";
			}
		}else{
			$mes="目标目录不存在";
		}
		return $mes;
	}
	
	/* 上传文件 */
	function uploadFile($fileInfo,$path,$allowExt=array("gif","jpeg","jpg","png","txt"),$maxSize=10485760){
		//判断错误号
		if($fileInfo['error']==UPLOAD_ERR_OK){
			//文件是否是通过HTTP POST方式上传上来的
			if(is_uploaded_file($fileInfo['tmp_name'])){
				//上传文件的文件名,只允许上传jpeg|jpg、png、gif、txt的文件
				//$allowExt=array("gif","jpeg","jpg","png","txt");
				$ext=getExt($fileInfo['name']);
				$uniqid=getUniqidName();
				$destination=$path."/".pathinfo($fileInfo['name'],PATHINFO_FILENAME)."_".$uniqid.".".$ext;
				if(in_array($ext,$allowExt)){
					if($fileInfo['size']<=$maxSize){
						if(move_uploaded_file($fileInfo['tmp_name'], $destination)){
							$mes="文件上传成功";
						}else{
							$mes="文件移动失败";
						}
					}else{
						$mes="文件过大";
					}
				}else{
					$mes="非法文件类型";
				}
			}else{
				$mes="文件不是通过HTTP POST方式上传上来的";
			}
		}else{
			switch($fileInfo['error']){
				case 1:
					$mes="超过了配置文件的大小";
					break;
				case 2:
					$mes="超过了表单允许接收数据的大小";
					break;
				case 3:
					$mes="文件部分被上传";
					break;
				case 4:
					$mes="没有文件被上传";
					break;
			}
		}
		return $mes;
	}
?>

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP连接数据库发布时间:2022-07-10
下一篇:
Linux环境PHP7.0安装发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap