美文网首页
php开发中函数汇总(长期更新)

php开发中函数汇总(长期更新)

作者: 空气KQ | 来源:发表于2019-08-07 11:48 被阅读0次

/*写入文件*/
function write_dir_file($filename,$data,$flags=null,$content=null){
    $dir = dirname($filename);
    if(!is_dir($dir)){
        mkdir($dir,0777,true);
    }
    return file_put_contents($filename,$data,$flags,$content);
}

function url_b64encode($string) {
    $data = base64_encode($string);
    $data = str_replace(array('+','/','='),array('-','_',''),$data);
    return $data;
}
function url_b64decode($string) {
    $data = str_replace(array('-','_'),array('+','/'),$string);
    $mod4 = strlen($data) % 4;
    if ($mod4) {
        $data .= substr('====', $mod4);
    }
    return base64_decode($data);
}

/*多维数组array_map*/
function array_array_map($callback, $arr1, array $_ = null){
    if(is_array($arr1)){
        $arr=array();
        foreach ($arr1 as $k=>$v){
            if(!is_array($v)){
                $arr[$k]=call_user_func($callback, $v);
            }else{
                $arr[$k]=array_array_map($callback,$v,$_);
            }
        }
    }
    return $arr;
}
/*多维数组implode*/
function array_implode($glue, $pieces){
    $str='';
    foreach ($pieces as $v){
        if(is_array($v)){
            $str.=array_implode($glue,$v);
        }else{
            $str.=$glue.$v;
        }
    }
    return $str;
}
/*任意编码转换成utf8*/
function auto_convert2utf8($str){
    $encode = mb_detect_encoding($str, array('ASCII','UTF-8','GB2312','GBK','BIG5'));
    if(strcasecmp($encode, 'utf-8')!==0){
        $str=iconv($encode,'utf-8//IGNORE',$str);
    }
    return $str;
}


/*清空目录,不删除根目录*/
function clear_dir($path,$passFiles=null){
    if(empty($path)){
        return;
    }
    $path=realpath($path);
    if(empty($path)){
        return;
    }
    if(!empty($passFiles)){
        $passFiles=array_map('realpath', $passFiles);
    }
    
    $fileList=scandir($path);
    foreach( $fileList as $file ){
        $fileName=realpath($path.'/'.$file);
        if(is_dir( $fileName ) && '.' != $file && '..' != $file ){
            clear_dir($fileName,$passFiles);
            rmdir($fileName);
        }elseif(is_file($fileName)){
            if($passFiles&&in_array($fileName, $passFiles)){
                
                
            }else{
                unlink($fileName);
            }
        }
    }
    
}

相关文章

网友评论

      本文标题:php开发中函数汇总(长期更新)

      本文链接:https://www.haomeiwen.com/subject/hjcodctx.html