博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
常用的php函数库
阅读量:6917 次
发布时间:2019-06-27

本文共 2489 字,大约阅读时间需要 8 分钟。

 以后慢慢补充

/** * 函数:格式化字节大小 * @param  number $size      字节数 * @param  string $delimiter 数字和单位分隔符 * @return string            格式化后的带单位的大小 */function format_bytes($size, $delimiter = '') {    $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB');    for ($i = 0; $size >= 1024 && $i < 5; $i++) $size /= 1024;    return round($size, 2) . $delimiter . $units[$i];}/** * 随机字符 * @param number $length 长度 * @param string $type 类型 * @param number $convert 转换大小写 * @return string */function random($length=6, $type='string', $convert=0){    $config = array(        'number'=>'1234567890',        'letter'=>'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',        'string'=>'abcdefghjkmnpqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ23456789',        'all'=>'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'    );    if(!isset($config[$type])) $type = 'string';    $string = $config[$type];    $code = '';    $strlen = strlen($string) -1;    for($i = 0; $i < $length; $i++){        $code .= $string{
mt_rand(0, $strlen)}; } if(!empty($convert)){ $code = ($convert > 0)? strtoupper($code) : strtolower($code); } return $code;}/** * 获取客户端IP地址 * @param integer $type 返回类型 0 返回IP地址 1 返回IPV4地址数字 * @param boolean $adv 是否进行高级模式获取(有可能被伪装) * @return mixed */function get_client_ip($type = 0,$adv=false) { $type = $type ? 1 : 0; static $ip = NULL; if ($ip !== NULL) return $ip[$type]; if($adv){ if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); $pos = array_search('unknown',$arr); if(false !== $pos) unset($arr[$pos]); $ip = trim($arr[0]); }elseif (isset($_SERVER['HTTP_CLIENT_IP'])) { $ip = $_SERVER['HTTP_CLIENT_IP']; }elseif (isset($_SERVER['REMOTE_ADDR'])) { $ip = $_SERVER['REMOTE_ADDR']; } }elseif (isset($_SERVER['REMOTE_ADDR'])) { $ip = $_SERVER['REMOTE_ADDR']; } // IP地址合法验证 $long = sprintf("%u",ip2long($ip)); $ip = $long ? array($ip, $long) : array('0.0.0.0', 0); return $ip[$type];}/** * 判断是否SSL协议 * @return boolean */function is_ssl() { if(isset($_SERVER['HTTPS']) && ('1' == $_SERVER['HTTPS'] || 'on' == strtolower($_SERVER['HTTPS']))){ return true; }elseif(isset($_SERVER['SERVER_PORT']) && ('443' == $_SERVER['SERVER_PORT'] )) { return true; } return false;}

 

转载于:https://www.cnblogs.com/mangyusisha/p/5586338.html

你可能感兴趣的文章
性能优化小方法
查看>>
使用 ng-packagr 打包 Angular
查看>>
nginx安装报错
查看>>
通过Xshell6跳板机在Linux上安装MySQL5.7
查看>>
学习笔记(4.28)
查看>>
基于前两章的docker-compose 部署Spring Cloud
查看>>
[译]使用MVI打造响应式APP(六):恢复状态
查看>>
vue初体验
查看>>
WebRTC 之ICE浅谈 | 内有干货免费下载
查看>>
前端基础24:ES6基础 ...简单用法/箭头函数
查看>>
自律·财大自习·Java
查看>>
git 命令使用的步骤及方法
查看>>
vue路由打开一个新的窗口
查看>>
小猿圈Linux学习-十个方便的 Bash 别名
查看>>
PHP 设计模式(杂项)
查看>>
Flutter状态管理学习手册(一)——ScopedModel
查看>>
Vue-cli升级webpack4以及各种loader升级配置
查看>>
java学习笔记-4.20
查看>>
Java集合-ArrayList源码解析-JDK1.8
查看>>
Audio Queue Services Programming Guide
查看>>