- 56浏览
- 2023-05-29
php判断网络协议请求类型是http还是https的方法如下:
<?php
function getRequestType(){
$type = 'http://';
if(((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'))){
$type = 'https://';
}
return $type;
}
?>
条件太长不方便看可以这样:
<?php
function getRequestType(){
$type = 'http://';
$term1 = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') == true;
$term2 = (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') == true;
if($term1 || $term2){
$type = 'https://';
}
return $type;
}
?>
你还可以这样:
<?php
$httpType = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://';
?>
如果是解析已有的url连接,方法如下:
<?php
$httpType = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://';
?>
如果是解析已有的url连接,方法如下:
$httpType = strpos($url,'https://') !== false ? 'https://' : 'http://';
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。