php获取请求的header头

17-09-06 11:26 字数 673 阅读 5574
function getRequestHeader($name = '')
{
    $header = [];
    if (function_exists('apache_request_headers') && $result = apache_request_headers()) {
        $header = $result;
    } else {
        foreach ($_SERVER as $key => $val) {
            if (0 === strpos($key, 'HTTP_')) {
                $key          = str_replace('_', '-', strtolower(substr($key, 5)));
                $header[$key] = $val;
            }
        }
        if (isset($_SERVER['CONTENT_TYPE'])) {
            $header['content-type'] = $_SERVER['CONTENT_TYPE'];
        }
        if (isset($_SERVER['CONTENT_LENGTH'])) {
            $header['content-length'] = $_SERVER['CONTENT_LENGTH'];
        }
    }
    $resp = array_change_key_case($header);
    if (is_array($name)) {
        return $resp = array_merge($resp, $name);
    }
    if ('' === $name) {
        return $resp;
    }
    $name = str_replace('_', '-', strtolower($name));
    return isset($resp[$name]) ? $resp[$name] : null;
}
0人点赞>
关注 收藏 改进 举报
0 条评论
排序方式 时间 投票
快来抢占一楼吧
请登录后发表评论
站长 @ 十七度
文章
384
粉丝
23
喜欢
195
收藏
31
排名 : 1
访问 : 147.29万
私信