去评论
dz插件网

三个实用的PHP函数小工具!

TyCoding
2023/08/05 17:32:56


php中文网课程

每日17点准时技术干货分享





1.PHP检测IP是否内网地址、保留地址
/** * @param string $ip 被检测的IP * @return bool 是否内网或者保留IP */publicfunctionisInternalIp($ip){ $ip = ip2long($ip);if (!$ip) {//非法IP,直接算true吧returntrue; } $net_a = ip2long('10.255.255.255') >> 24; //A类网预留ip的网络地 $net_b = ip2long('172.31.255.255') >> 20; //B类网预留ip的网络地址 $net_c = ip2long('192.168.255.255') >> 16; //C类网预留ip的网络地址 $net_local127 = ip2long('127.255.255.255') >> 24; //127保留地址 $net_local169 = ip2long('169.254.255.255') >> 16; //169保留地址return $ip >> 24 === $net_a || $ip >> 20 === $net_b || $ip >> 16 === $net_c || $net_local127 === $ip >> 24 || $net_local169 === $ip >> 16;}
这个是我网上找来的,具体地址我忘了,然后自己加了保留地址的检测。

2.PHP获取HTTP包流量整个HTTP请求包流量
publicfunctionhttp(){ $row = $_SERVER['REQUEST_URI'] . "\r\r"; $header = getallheaders();foreach ($header as $k => $v) { $row .= $k . ': ' . $v . "\r"; } $row .= "\r\r" . file_get_contents("php://input");return $row; }
3.vue差量更新包-PHP处理
publicfunctiontest(){ $config = json_decode(file_get_contents('vueconfig.json'), true); //配置目录,初次使用要先建立配置 $path = 'D:\\web\\project\\vue\\dist\\static\\'; // 打包的静态地址foreach ($config as $dir => $type) {foreach (scandir($path . $dir) as $fkey => $fva) {if ($fva == '.' || $fva == '..') {continue; } else {if (in_array($fva, $type)) {//没有更新就删除该文件 unlink($path . $dir . '\\' . $fva); } else {echo'新增文件:' . $path . $dir . '\\' . $fva . "<br>";//有更新就把新文件加入到配置表里记录 $config[$dir][$fkey] = $fva; } } } }//更新配置表 file_put_contents('vueconfig.json', json_encode($config));}
直接运行即可删除没有改变的文件,保留更新的文件,实现差量更新。
Tips:php中文网第《22期PHP线上直播班》刚开课,目前还有少量名额,欲报名请联系微信:phpcn01(月月老师)



授课形式:

1.零基础开始,前端到后端,系统的学习!
2.直播同步录播,内部群,老师作业批改,辅导解答,督促学习

报名咨询↓↓↓

QQ报名:27220243(钟老师)

微信报名:phpcn01(月月老师)





(长按识别,在线咨询)↓↓↓点击左下角【阅读原文】,直接在线报名