不要怪女人现实,女人之所以现实,只因经历过爱情的伤生活的磨砺。只有懂得女人为何如此现实的男人,才能够给予女人一份期待中的现实生活。
今天在调试微信的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其它相关文章!