哪位PHP大神能帮我解释一下这段代码是啥意思呢?

2025-03-07 06:42:42
推荐回答(1个)
回答1:

//屏蔽错误提示
error_reporting(0);
header("Content-Type: text/html; charset=utf-8"); // 设置网页编码,根据实际需要修改
//判断服务变量HTTP_REFERER是否存在,这个HTTP_REFERER参数是表示从哪里链接过来的,
//如百度过来的,如果直接输入网址进行访问是没有这个参数的。
if( isset($_SERVER['HTTP_REFERER']) ) {
    //分割参数为数组
    $url_array = explode('http://', $_SERVER['HTTP_REFERER']);
    //继续分割,目的是为了获取域名
    $url = explode('/', $url_array[1]);
    //如果来源网址不等于本网站网址则禁止访问
    if($_SERVER['SERVER_NAME'] != $url[0]) {
        exit('Access Denied! You are not coming from the site!');
    }
} else {
    //直接访问网址进行访问也不行
    exit('Access Denied! Please do not load this page directly.');
}
//获取传递的 参数
$v=$_GET["v"];

整个代码的功能其实就是防止非法数据提交用的。