栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

自己做工具--封装PHP的工具类

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自己做工具--封装PHP的工具类

一、使用示例

// 引入两个核心文件require_once './_autoload.php';require_once './functions.php';// 使用示例// 如调用DateTools工具类里的方法,调用示例如下$date_tools = new DateTools();
var_dump($date_tools->getSomeZeroTimeStamp($str=''));

二、代码目录

自己做工具--封装PHP的工具类.png

主要有几大工具类:
ArrayTools.php —— 数组工具类
CharacterTools.php —— 英文字母工具类
CurlTools.php —— 跟curl相关的工具类
DateTools.php —— 时间工具类
EncryptTools.php —— 加密工具类
FileTools.php —— 文件工具类
HttpTools.php —— 与http协议相关的工具类
ImageTools.php —— 图片工具类
MapTools.php —— 地图工具类
NumberTools.php —— 数字工具类
SendCodeTools.php —— 聚合数据发送手机验证码工具类
ServerTools.php —— 与服务器相关的工具类
StringTools.php —— 字符串相关操作的工具类
UploadTools.php —— 上传文件工具类
VerifyTools.php —— 校验工具类,如验证ip、手机、邮箱等
XmlTools.php —— 操作xml相关的工具类
ZipTools.php —— Zip压缩解压工具类

三、ArrayTools.php —— 数组工具类

四、VerifyTools.php —— 校验工具类,如验证ip、手机、邮箱等

五、UploadTools.php —— 上传文件工具类

upload_name = $_FILES["file"]["name"]; //取得上传文件名
        $this->upload_filetype = $_FILES["file"]["type"];        $this->upload_tmp_name = $_FILES["file"]["tmp_name"];        $this->allow_uploadedfile_type = array('jpeg','jpg','png','gif','bmp','doc','xls','csv','zip','rar','txt','wps');        $this->upload_file_size = $_FILES["file"]["size"];        $this->upload_target_dir="./upload";
    }    //文件上传
    public function upload_file()
    {        if(!empty($_FILES)){
            $upload_filetype = $this->getFileExt($this->upload_name);//获取文件扩展名
            if(in_array($upload_filetype,$this->allow_uploadedfile_type))//判断文件类型是否符合要求
            {                if($this->upload_file_size < $this->allow_uploaded_maxsize)//判断文件大小是否超过允许的最大值
                {                    if(!is_dir($this->upload_target_dir))//如果文件上传目录不存在
                    {
                        mkdir($this->upload_target_dir,true);//创建文件上传目录
                        chmod($this->upload_target_dir,0777);//改权限
                    }                    $this->upload_final_name = date("YmdHis").rand(0,100).'.'.$upload_filetype;//生成随机文件名
                    $this->upload_target_path = $this->upload_target_dir."/".$this->upload_final_name;//文件上传目标目录
                    if(!move_uploaded_file($this->upload_tmp_name,$this->upload_target_path))//文件移动失败
                    {                        echo "文件上传失败!

";                     }                    else                     {                        echo "文件上传成功!

";                     }                 }                else                 {                    echo("文件太大,上传失败!

");                 }             }            else             {                echo("仅支持一下文件类型,请重新选择:
".implode(',',$this->allow_uploadedfile_type)."

");             }         }else{            echo("请上传文件!

");         }     }         public function getFileExt($filename){         $info = pathinfo($filename);        return @$info["extension"];     } }

六、ZipTools.php —— Zip压缩解压工具类

open($zipName, ZipArchive::CREATE) === TRUE){
    //    addFileToZip($path, $zip); // 调用方法,对要打包的根目录进行操作,并将ZipArchive的对象传递给方法
    //    $zip->close(); // 关闭处理的zip文件
    //    }
    public function addFileToZip($path,$zip){        // 转化  为 / ,适应 windows
        $file_tools = new FileTools();
        $path = $file_tools->dirPath($path);        // 判断是不是目录,是的话递归进入
        if(is_dir($path)) {
            $handler = opendir($path); //打开当前文件夹由$path指定。
            while (($filename = readdir($handler)) !== false) {                if ($filename != "." && $filename != "..") {                    //文件夹文件名字为'.'和'..',不要对他们进行操作
                    if (is_dir($path . "/" . $filename)) {                        // 如果读取的某个对象是文件夹,则递归
                        $this->addFileToZip($path . "/" . $filename, $zip);
                    } else { //将文件加入zip对象
                        $zip->addFile($path . "/" . $filename);
                    }
                }
            }
        }else{
            $zip->addFile($path);
        }
        @closedir($path);        echo 'zip压缩成功';

    }    
    // php 从zip压缩文件中提取文件
    // 使用示例:
    // $filename = $_SERVER['document_ROOT'].'/unzip.zip';
    // $path = $_SERVER['document_ROOT'].'/unzip';
    // unZip($filename,$path );
    public function unZip($filename = '', $path = ''){        //将文件名和路径转成windows系统默认的gb2312编码,否则将会读取不到
        $filename = iconv("utf-8","gb2312",$filename);
        $path = iconv("utf-8","gb2312",$path);        if (!file_exists($filename)) {            return false;
        }

        $zip = new ZipArchive;        if ($zip->open($filename) === TRUE) {//中文文件名要使用ANSI编码的文件格式

            $zip->extractTo($path);//提取全部文件
            $zip->close();            echo 'zip解压成功';

        } else {            echo 'zip解压失败或没有这个zip文件';

        }

    }


}



作者:whmblog
链接:https://www.jianshu.com/p/8ab3dce8d6f1


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/227227.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号