PHP中怎么实现一个上传类
PHP中怎么实现一个上传类,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
成都创新互联公司专注于芜湖企业网站建设,响应式网站设计,商城建设。芜湖网站建设公司,为芜湖等地区提供建站服务。全流程按需网站策划,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
_isType($fileName)||$this->_isBig($length )) if(!$this->_isType($fileName)||$this->_isBig($length )||$fileError!=0) { //print_r($files); returnfalse; }else{ $path=$this->_createDir($userName);//取得路径 $createFileName=$userName."_".time();//设置当前文件名 $createFileType=$this->getFileType($fileName);//设置文件类别 return@move_uploaded_file($fileTemp,$path.$createFileName.'.'.$createFileType)?true:false; } } /** * *@authorsanshi *@version1.0.0ThuAug1801:07:43CST2005 *@paramint$length上传限制的大小 *@returnboolean超过返回true *@deprecated *判断是否超过预定大小 */ function_isBig($length) { $bigest=''; return$big>$bigest?true:false; } /** * *@authorsanshi *@version1.0.0ThuAug1801:08:55CST2005 *@paramstring$fileName文件名 *@returnstring$fileType文件后缀 *@deprecated *取得文件后缀(只取得文件的***一个后缀名) */ functiongetFileType($fileName) { returnend(explode('.',$fileName)); } /** * *@authorsanshi *@version1.0.0ThuAug1801:10:41CST2005 *@paramstring$fileName文件名 *@paramboolean$method是否检查多个后缀默认false *@paramint$postFix后缀个数默认为2 *@returnboolean存在返回true *@deprecated *检查文件的后缀是否在类别数组中,类别数组自己设置 *如果$method设置为true则检查文件有几个后缀 */ function_isType($fileName,$method='false',$postFix=2) { //设置类别数组 $type=array('jpeg', 'gif', 'bmp', 'exe'); $fileName=strtolower($fileName); $fileTypeArray=explode('.',$fileName); $fileType=end($fileTypeArray); //判断是否有一个文件有多个后缀 if($method) { if(count($fileTypeArray)>(is_int($postFix)?$postFix:2)) { returnfalse; } } returnin_array($fileType,$type); } /** * *@authorsanshi *@version1.0.0ThuAug1801:17:19CST2005 *@paramstring$userName *@returnstring$path *@deprecated *建立目录目录格式年/月/日/用户名/ *权限为755 */ function_createDir($userName) { $root=''; $pathSign=DIRECTORY_SEPARATOR; $y=date('Y').$pathSign; $m=date('m').$pathSign; $d=date('d').$pathSign; $path=$root.$y.$m.$d.$userName; $dirArray=explode($pathSign,$path); $tempDir=''; foreach($dirArrayas$dir) { $tempDir.=$dir.$pathSign; $isFile=file_exists($tempDir); clearstatcache(); if(!$isFile&&!is_dir($tempDir)) { @mkdir($tempDir,0755); } } return$path.$pathSign; } /** * *@authorsanshi *@version1.0.0ThuAug1801:19:32CST2005 *@param string$dirName目录名 *@return boolean可以操作返回true *@deprecated *判断操作是否在上传目录 */ function_isDel($dirName) { //注意upLoadDir,一定要与真正使用目录相对应 $upLoadDir=''; $upLoadDir=preg_replace('/\\//','\/',$upLoadDir); $format="/^{$upLoadDir}/"; returnpreg_match($format,$dirName); } /** * *@authorsanshi *@version1.0.0ThuAug1801:25:58CST2005 *@paramstring$fileName文件名 *@returnboolean删除文件成功返回true *@deprecated *删除文件 */ functiondelFile($fileName) { $cur_dir=dirname(trim($fileName)); if($this->_isDel($cur_dir)) { return@unlink($fileName)?true:false; }else{ returnfalse; } } /** * *@authorsanshi *@version1.0.0ThuAug1801:27:43CST2005 *@paramstring$dieName目录名 *@returnboolean删除成功返回true *@deprecated *删除目录目录下如果有文件不能删除 */ functiondelDir($dirName) { if($this->_isDel($dirName)&&is_dir($dirName)) { return@rmdir($dirName)?true:false; }else{ returnfalse; } } } ?> init("file")) { echo'success'; }else{ echo'failure'; } */ ?>
关于PHP中怎么实现一个上传类问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。
名称栏目:PHP中怎么实现一个上传类
URL网址:http://ybzwz.com/article/ijeddc.html