tp 公共方法

89 阅读1分钟
<?php
// 这是系统自动生成的公共文件
//返回正确数据
if (!function_exists('success')) {
    function success($data=[],$msg='ok',$code=200){
        return json([
            'data'=>$data,
            'msg'=>$msg,
            'code'=>$code
        ]);
    }
}
//返回错误数据
if (!function_exists('fail')) {
    function fail($data=[],$msg='参数错误',$code=2001){
        return json([
            'data'=>$data,
            'msg'=>$msg,
            'code'=>$code
        ]);
    }
}
//加密
if (!function_exists('encryptPassword')) {
    function encryptPassword($password){
        $sail = '2002a';
        return md5($sail.$password.$sail);
    }
}
//父子结构处理
if (!function_exists('encrypt_handle_date')) {
    function encrypt_handle_date($data,$pid=0){
        $result = [];
        foreach ($data as $value) {
            if ($value['pid'] == $pid) {
                $result[$value['id']] = $value;
                $result[$value['id']]['children'] = encrypt_handle_date($data,$value['id']);
            }
        }
        return $result;
    }
}
//树状结构处理
if (!function_exists('encrypt_handle')) {
    function encrypt_handle($data,$pid=0,$level=0){
        static $tree = [];  //静态避免覆盖
        foreach ($data as $k=>$v) {
            if ($v['pid'] == $pid) {
                $v['level'] = $level;//第一次循环出来的level为0 同 pid
                $tree[] = $v; //循环到此为第一级
                unset($data[$k]); //第一次循环出来的数据 只展示一次即可 在第二次循环式删掉下标即可
                $v['level'] = encrypt_handle($data,$v['id'],$level+1);//和父子结构同理 把二级数据循环到对应的level级别下面
            }
        }
        return $tree;
    }
}