php判断当前的网址是否为HTTPS协议

不要怪女人现实,女人之所以现实,只因经历过爱情的伤生活的磨砺。只有懂得女人为何如此现实的男人,才能够给予女人一份期待中的现实生活。

今天在调试微信的JSAPI支付的时候一直出现url地址与后台地址不一致的问题,排除了微信服务商那边的设置问题后,就锁定了后台的代码逻辑。发现发送的协议与当前的协议不同,就做了个HTTP与HTTPS协议的判断,发现问题解决了。

php判断当前的协议是否为HTTPS

下面给出了两种判断当前网址是否为HTTPS协议的方法,大家可以参考一下!

方法1:

例1:

function is_https()
{
    if ( !empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off') {
        return true;
    } elseif ( isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https' ) {
        return true;
    } elseif ( !empty($_SERVER['HTTP_FRONT_END_HTTPS']) && strtolower($_SERVER['HTTP_FRONT_END_HTTPS']) !== 'off') {
        return true;
    }
    return false;
}

PS:如果当前为HTTPS协议,则返回TRUE,否则返回 FALSE

例2:

if(isset($_SERVER["HTTP_X_CLIENT_SCHEME"])){
    $scheme = $_SERVER["HTTP_X_CLIENT_SCHEME"];
}elseif(isset($_SERVER["REQUEST_SCHEME"])){
    $scheme = $_SERVER["REQUEST_SCHEME"];
}else{
    $scheme = 'http';
}
echo $scheme;

PS:如果是HTTPS协议,则输出https,如果是HTTP协议则输出http

方法2:

php 使用正则表达式来判断一个网址是否为HTTPS协议!

使用正则表达式,可以很轻松的对已知的网址做出HTTP与HTTPS协议的判断!

$url = 'https://www.feiniaomy.com/';
$preg = '/^http(s)?:\\/\\/.+/';
if(preg_match($preg,$url)){
    echo '是HTTPS协议';
}else{
    echo '不是HTTPS协议';
}

以上就是php判断当前的网址是否为HTTPS协议。渐渐的知道了,很多东西可遇而不可求,不属于自己的,何必拼了命去在乎。你在意什么,什么就会折磨你。期待是所有心痛的根源。更多关于php判断当前的网址是否为HTTPS协议请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
php get_magic_quotes_gpc()函数介绍与用法

php取消运行时间限制的方法

php中ini_set函数介绍

php获取文件夹下所有文件/文件夹

php如何实现文件下载的方法