php基本函数汇总
1.统计数组元素个数 2
[1003] => 2
[1008] => 1
[1001] => 1
[1000] => 1
[1004] => 1
[1012] => 1
[1009] => 1
[1111] => 1
)
2. 循环删除目录 isDir()) {
if (! $file->isDot()) {
cleanup_directory($file->getPathname());
}
} else {
unlink($file->getPathname());
}
}
rmdir($dir);
}
3.无限极分类生成树 $items = array(
1 => array('id' => 1,'pid' => 0,'name' => '安徽省'),2 => array('id' => 2,'name' => '浙江省'),3 => array('id' => 3,'pid' => 1,'name' => '合肥市'),4 => array('id' => 4,'pid' => 3,'name' => '长丰县'),5 => array('id' => 5,'name' => '安庆市'),); print_r(generateTree($items)); /**
4.数组排序 a - b 是数字数组写法 遇到字符串的时候就要 if(a > b) {
return 1; } return 0; 5.array_reduce return $result;
},[]); // [1 => 1,2 => 2,... 5 => 5] 6.array_map 闭包中只接受一个或者多个参数,闭包的参数数量和 array_map 本身的参数数量必须一致 'value'];
array_map(function($key,$value) {
echo $key . $value; $result = array_map($double,[1,3]); // 2 4 6 7.繁殖兔子 $fab[0] = 1;
$fab[1] = 1; for ($i = 2; $i < $month; $i++) for ($i = 0; $i < $month; $i++) 8 .datetime 9.加密解密 function decrypt($data,$key)
{ $key = md5($key); $x = 0; $data = base64_decode($data); $len = strlen($data); $l = strlen($key); $char = ''; for ($i = 0; $i < $len; $i++) { if ($x == $l) { $x = 0; } $char .= substr($key,$x,1); $x++; } $str = ''; for ($i = 0; $i < $len; $i++) { if (ord(substr($data,1)) < ord(substr($char,1))) { $str .= chr((ord(substr($data,1)) + 256) - ord(substr($char,1))); } else { $str .= chr(ord(substr($data,1)) - ord(substr($char,1))); } } return $str; } 10 . 多维数组降级 array_walk_recursive($arr,function($value) use (&$result) {
$result[] = $value; }); return $result; function flatten(arr) {
},[]); // [1,5] 12.二维数组去重 array('id'=>'2','title'=>'...','ding'=>'1','jing'=>'1','time'=>'...','url'=>'...','dj'=>'...'),array('id'=>'2','dj'=>'...')
); 13.格式化字节大小 = 1024 && $i < 6; $i++) $size /= 1024;
return round($size,2) . $delimiter . $units[$i];
}
14.3分钟前 '年前 ('.date('Y-m-d',$timestamp).')',30 * 24 * 60 * 60 => '个月前 ('.date('m-d',7 * 24 * 60 * 60 => '周前 ('.date('m-d',24 * 60 * 60 => '天前',60 * 60 => '小时前',60 => '分钟前',1 => '秒前'
);
foreach ($interval as $secs => $str) {
$d = $etime / $secs;
if ($d >= 1) {
$r = round($d);
return $r . $str;
}
};
}
15.身份证号 "北京",12=>"天津",13=>"河北",14=>"山西",15=>"内蒙古",21=>"辽宁",22=>"吉林",23=>"黑龙江",31=>"上海",32=>"江苏",33=>"浙江",34=>"安徽",35=>"福建",36=>"江西",37=>"山东",41=>"河南",42=>"湖北",43=>"湖南",44=>"广东",45=>"广西",46=>"海南",50=>"重庆",51=>"四川",52=>"贵州",53=>"云南",54=>"西藏",61=>"陕西",62=>"甘肃",63=>"青海",64=>"宁夏",65=>"新疆",71=>"台湾",81=>"香港",82=>"澳门",91=>"国外");
$City = substr($id,2);
$BirthYear = substr($id,4);
$BirthMonth = substr($id,2);
$BirthDay = substr($id,12,2);
$Sex = substr($id,16,1) % 2 ;//男1 女0
//$Sexcn = $Sex?'男':'女';
//地域验证
if(is_null($oCity[$City])) {return false;}
//出生日期效验
if($BirthYear>2078 || $BirthYear<1900) {return false;}
$RealDate = strtotime($BirthYear.'-'.$BirthMonth.'-'.$BirthDay);
if(date('Y',$RealDate)!=$BirthYear || date('m',$RealDate)!=$BirthMonth || date('d',$RealDate)!=$BirthDay) {
return false;
}
return array('id'=>$id,'location'=>$oCity[$City],'Y'=>$BirthYear,'m'=>$BirthMonth,'d'=>$BirthDay,'sex'=>$Sex);
}
16.获取二维数组中某个key的集合 array( 'id' => 1,'name' => '张三','email' => 'zhangsan@sina.com',1 => array( 'id' => 2,'name' => '李四','email' => 'lisi@163.com',2 => array( 'id' => 5,'name' => '王五','email' => '10000@qq.com',...... );
$ids = array(); $ids = array_map('array_shift',$user);
$ids = array_column($user,'id');//php5.5
$names = array(); $names = array_reduce($user,create_function('$v,$w','$v[$w["id"]]=$w["name"];return $v;'));
以上所述就是本文的全部内容了,希望大家能够喜欢。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |