• 技术文章 >后端开发 >php教程

    分享PHP函数使用小工具(附代码示例)

    藏色散人藏色散人2023-01-21 08:30:01转载29

    本篇文章给大家带来了关于PHP的相关知识,其中主要介绍了PHP怎么检测IP相关信息的,以及PHP如何获取HTTP、vue包等,感兴趣的朋友,下面一起来看一下吧,希望对大家有帮助。

    /**
     * @param string $ip 被检测的IP
     * @return bool 是否内网或者保留IP
     */
    public function isInternalIp($ip)
    {
        $ip = ip2long($ip);
        if (!$ip) {
            //非法IP,直接算true吧
            return true;
        }
        $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;
    }

    这个是我网上找来的,具体地址我忘了,然后自己加了保留地址的检测

        public function http()
        {
            $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;
        }
    public function test()
    {
        $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));
    }

    直接运行即可删除没有改变的文件,保留更新的文件,实现差量更新

    推荐学习:《PHP视频教程

    以上就是分享PHP函数使用小工具(附代码示例)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:cnblogs,如有侵犯,请联系admin@php.cn删除
    专题推荐:php 函数
    上一篇:设计API接口时,要注意这些地方! 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • PHP函数运用之检查一个值是不是有限值、无限值或非数值• 实例演示怎么在单击按钮时调用PHP函数• 巧用PHP函数或常量快速获取PHP版本号、最大文件名长度• PHP函数运用之返回两给定日期的天数差
    1/1

    PHP中文网