封装的函数
来源:互联网 发布:局域网控制桌面软件 编辑:程序博客网 时间:2024/06/05 15:58
(一).封装的函数:/** * 判断是否为11121 * @return bool */function is_11121(){ return in_array(date("d",time()),[1,11,21]);}/** * 微信签名算法 * @param $arr * @param $key * @return string */function sign($arr,$key){ if(ksort($arr)) { $str=""; foreach ($arr as $k=>$v) { $str=$str.$k."=".$v."&"; } } $str=$str."key=".$key; return strtoupper(md5($str));}/** * @param $durl * @return mixed */function curl_file_get_contents($durl){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $durl); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 获取数据返回 curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ; // 在启用 CURLOPT_RETURNTRANSFER 时候将获取数据返回 $r = curl_exec($ch); curl_close($ch); return $r;}/** * @param $bucket * @param $key * @return array|string */function getUcloud($bucket, $key) { //$curtime = time(); //$curtime += 3600*24*365; // 有效期60秒 $url = UCloud_MakePrivateUrl($bucket, $key); //$content = curl_file_get_contents($url); return $url;}/** * 生成订单号 * @return string */function make_no(){ return strval(date('YmdHis') . substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 4));}/** * 生成优惠卷编号 * @param string $TYPE * @param int $LENGTH * @return string */function make_rand_str($TYPE = 'admix', $LENGTH = 12){ //dictionary $dictionary = array( 'string' => 'qwertyuiopasdfghjklzxcvbnm', 'STRING' => 'QWERTYUIOPASDFGHJKLZXCVBNM', 'String' => 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM', 'admix' => 'q1we3rty2ui6opa4sdf7ghj5klz8xc9vbn0m', 'ADMIX' => 'Q1WE3RTY2UI6OPA4SDF7GHJ5KLZ8XC9VBN0M', 'Admix' => 'Q1WE3RTY2UI6OPA4SDF7GHJ5KLZ8XC9VBN0Mq1we3rty2ui6opa4sdf7ghj5klz8xc9vbn0m', 'num' => '1234567890', ); $type = 'admix'; if (empty($TYPE) == false) { $type = trim($TYPE); } $length = 8; if ($LENGTH > 1) { $length = (int)$LENGTH; } $str = ''; switch ($type) { case 'string' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary{$type}{rand(0, 25)}; } break; case 'STRING' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary{$type}{rand(0, 25)}; } break; case 'String' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary{$type}{rand(0, 51)}; } break; case 'admix' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary{$type}{rand(0, 35)}; } break; case 'ADMIX' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary{$type}{rand(0, 35)}; } break; case 'Admix' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary{$type}{rand(0, 71)}; } break; case 'num' : for ($i = 0; $i < $length; $i++) { $str .= $dictionary[$type][rand(0, 9)]; } break; } return $str.uniqid();}/* * 获取前一天的开始和结束时间 */function getLastTime(){ $str=date("Y-m-d",strtotime("-1 day"))." 0:0:0"; $data["star"]=strtotime($str); $str=date("Y-m-d",strtotime("-1 day"))." 24:00:00"; $data["end"]=strtotime($str); return $data;}/** * 获取今天的开始和结束时间 * @return mixed */function getTime(){ $str=date("Y-m-d",time())." 0:0:0"; $data["star"]=strtotime($str); $str=date("Y-m-d",time())." 24:00:00"; $data["end"]=strtotime($str); return $data;}/** * @param $multi_array * @param $sort_key * @param int $sort * @return bool */function multi_array_sort($multi_array,$sort_key,$sort=SORT_ASC){ if(is_array($multi_array)){ foreach ($multi_array as $row_array){ if(is_array($row_array)){ $key_array[] = $row_array[$sort_key]; }else{ return false; } } }else{ return false; } array_multisort($key_array,$sort,$multi_array); return $multi_array;}/* * 判断今天昨天前天 */function getDay($time){ //判断是否是今天 $time=strtotime($time); $today=getTime(); if ($time==$today["star"]) { return "今天"; } if ($time==getLastTime()["star"]) { return "昨天"; } if ($time==strtotime(date("Y-m-d",strtotime("-2 days"))." 0:0:0")) { return "前天"; } return "";}/* * 接口数据格式返回 */function json($errno, $data = null, $error = 'success'){ if (is_null($data)) { $data = ['err' => $errno, 'msg' => $error]; } elseif (is_string($data)) { $data = ['err' => $errno, 'msg' => $data]; } else { $data = ['err' => $errno, 'msg' => $error, 'data' => $data]; } return $data;}/* * 返回上午下午 */function getStrTime(){ $no=date("H",time()); if ($no>0&&$no<=6){ return "凌晨好"; } if ($no>6&&$no<12){ return "上午好"; } if ($no>=12&&$no<=18){ return "下午好"; } if ($no>18&&$no<=24){ return "晚上好"; } return "您好";}/* * 无限极分类 */function make_tree($list,$pk='id',$pid='parent_id',$child='child',$root=0){ $tree=array(); $packData=array(); foreach ($list as $data) { $packData[$data[$pk]] = $data; } foreach ($packData as $key =>$val){ if($val[$pid]==$root){//代表根节点 $tree[]=& $packData[$key]; }else{ //找到其父类 $packData[$val[$pid]][$child][]=& $packData[$key]; } } return $tree;}/* * 省市一样返回一个 */function city_province($province,$city){ if (mb_substr($province,0,2)==mb_substr($city,0,2)) { return $province; } return $province.$city;}/* * 年月日返回时间轴 */function getTimeStamp($str){ $year=mb_substr($str,0,4); $month=mb_substr($str,5,2); $day=mb_substr($str,8,2); return $year."/".$month."/".$day;}/* * 员工数组 */function isEmployee($phone){ $employee=[ 18518092630, 13811188441, 15501031831, 15226593622 ]; if (in_array($phone,$employee)) { return false; }else { return true; }}/* * 返回员工手机号 */function employeePhone(){ return $employee=[ '18518092630', '13811188441', '13910337645', '18210851220', '15226593622' ];}/* * 返回整数 */function getInt($int){ $length=strlen($int)-1; $str=str_repeat(0,$length); return mb_substr($int,0,1)."$str";}/* * 返回大整数 */function getLargeInt($int){ $length=strlen($int)-1; $str=str_repeat(0,$length); $temp=mb_substr($int,0,1)+1; return $temp."$str";}/* * 二位数组取最大值pv */function getArrayMax($arr,$field){ foreach ($arr as $k=>$v){ $temp[]=$v[$field]; } return max($temp);}/* * 数字转汉字 */function number2chinese($num,$mode = true,$sim = false){ if(!is_numeric($num)) return '含有非数字非小数点字符!'; $char = $sim ? array('零','一','二','三','四','五','六','七','八','九') : array('零','壹','贰','叁','肆','伍','陆','柒','捌','玖'); $unit = $sim ? array('','十','百','千','','万','亿','兆') : array('','拾','佰','仟','','萬','億','兆'); $retval = $mode ? '元':'点'; //小数部分 if(strpos($num, '.')){ list($num,$dec) = explode('.', $num); $dec = strval(round($dec,2)); if($mode){ if (!isset($dec['0'])) { $dec['0']=0; } if (!isset($dec['1'])) { $dec['1']=0; } $retval .= "{$char[$dec['0']]}角{$char[$dec['1']]}分"; }else{ for($i = 0,$c = strlen($dec);$i < $c;$i++) { $retval .= $char[$dec[$i]]; } } } //整数部分 $str = $mode ? strrev(intval($num)) : strrev($num); for($i = 0,$c = strlen($str);$i < $c;$i++) { $out[$i] = $char[$str[$i]]; if($mode){ $out[$i] .= $str[$i] != '0'? $unit[$i%4] : ''; if($i>1 and $str[$i]+$str[$i-1] == 0){ $out[$i] = ''; } if($i%4 == 0){ $out[$i] .= $unit[4+floor($i/4)]; } } } $retval = join('',array_reverse($out)) . $retval; return $retval;}/** * 获取月初时间 */function getMonthStar(){ $date=date("Y-m-01"); return strtotime($date);}
阅读全文
0 0
- 函数的封装解释
- 封装的VC函数
- cookies的函数封装
- AJAX函数的封装
- 函数的封装
- 常用函数的封装
- outputdebugstring函数的封装
- 封装的ajax函数
- 信号量函数的封装
- 封装的函数
- 函数的封装
- 读取BOM的函数封装
- 一些常用的函数封装
- 封装opencvdll 的函数说明
- 封装自己的日志函数
- QTP自己封装的函数
- 获取class函数的封装
- 自己封装的几个函数
- 曹可爱之最可爱-Vue.js入门(六)条件渲染
- 口才盛宴丨 CBK第二阶段第一期训练营正式开营
- BZOJ 4311: 向量(线段树分治+凸包+三分)
- 堆优化Prim
- Eclipse J2EE 使用技巧(持续更新)
- 封装的函数
- hibernate报错You have an error in your SQL syntax; ......near 'type=InnoDB' at line 7
- mybatis分页插件pageHelper的使用
- Struts2文件上传
- diff diff3 命令
- 配置文件
- 这些行业将是最有发展前景的!
- 日常运维(二):监控io性能 free命令 ps命令 查看网络状态 linux下抓包
- CSS 文本样式[下]