四十一、逐行阅读Yii2.0.43_Yii框架文件yii\web\Request.php(8)

一、getQueryString方法,返回url中查询参数部分

    // query string
    public function getQueryString()
    {
        return isset($_SERVER['QUERY_STRING']) ?
            $_SERVER['QUERY_STRING'] :
            '';
    }

 二、getIsSecureConnection方法,是否安全连接

    //检查是否https请求
    public function getIsSecureConnection()
    {
        //https标识为 on 或者$_SERVER['HTTPS']为1
        if (isset($_SERVER['HTTPS']) && 
            (
                strcasecmp($_SERVER['HTTPS'], 'on') === 0 
                || $_SERVER['HTTPS'] == 1
            )
        ) {
            return true;
        }

        //比较schema部分
        if (($proto = $this->getSecureForwardedHeaderTrustedPart('proto')) !== null) {
            return strcasecmp($proto, 'https') === 0;
        }

        //比较header部分
        foreach ($this->secureProtocolHeaders as $header => $values) {
            if (($headerValue = $this->headers->get($header, null)) !== null) {
                //strcasecmp函数
                //二进制安全的不区分大小写的字符串比较
                foreach ($values as $value) {
                    if (strcasecmp($headerValue, $value) === 0) {
                        return true;
                    }
                }
            }
        }

        return false;
    }

三、getServerName方法,返回服务器名称

    // 服务器名称
    public function getServerName()
    {
        return isset($_SERVER['SERVER_NAME']) ?
            $_SERVER['SERVER_NAME'] :
            null;
    }

四、getServerPort方法,返回服务端口

    //服务端端口号
    public function getServerPort()
    {
        return isset($_SERVER['SERVER_PORT']) ? 
            (int) $_SERVER['SERVER_PORT'] : 
            null;
    }

五、getReferrer方法,返回来源url

    // 来源url
    public function getReferrer()
    {
        return $this->headers->get('Referer');
    }

六、getOrigin方法,返回origin头

    //返回origin值
    public function getOrigin()
    {
        return $this->getHeaders()->get('origin');
    }

七、getUserAgent方法,返回代理

    // 返回user agent值
    public function getUserAgent()
    {
        return $this->headers->get('User-Agent');
    }

总结:

 阅读了7个方法:

  • getQueryString方法,返回url中查询参数部分
  • getIsSecureConnection方法,是否安全连接
  • getServerName方法,返回服务器名称
  • getServerPort方法,返回服务端口
  • getReferrer方法,返回来源url
  • getOrigin方法,返回origin头
  • getUserAgent方法,返回代理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值