以下是用 PHP 编写的判断访问的域名,如果带/?问号后边的字符大于 29 个的代码:

$random = mt_rand(100000, 999999);

// 判断是否是首次访问
if (!isset($_COOKIE['visited'])) {
    // 设置cookie,有效期为3秒
    setcookie('visited', 1, time() + 3);
    // 获取当前网址
    $url = 'http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]';
    // 判断是否已经有参数
    if (strpos($url, '?') !== false) {
        // 如果有参数,在后面加上随机数
        $url .= '&sltz=' . $random;
    } else {
        // 如果没有参数,在后面加上随机数
        $url .= '?slfh=' . $random;
    }
    
    // 判断参数部分的长度是否大于等于29个字符
    if (strlen(parse_url($url, PHP_URL_QUERY)) >= 29) {
        // 执行需要执行的代码
        // ...
    }
}

在以上代码中,首先生成一个随机数 $random,然后判断是否是首次访问,如果是首次访问,则设置一个有效期为3秒的 cookie,并获取当前网址。判断当前网址是否已经有参数,如果有参数,则在参数后面加上一个随机数 sltz,如果没有参数,则在网址后面加上一个参数 slfh。最后,判断参数部分的长度是否大于等于 29 个字符,如果满足条件,则执行需要执行的代码。

PHP 域名访问参数长度判断与重定向

原文地址: https://www.cveoy.top/t/topic/bwNi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录