php常用函数

url整合新参数

function parseUri($url, $query) {
    // 将url解析为数组
    $parsed_url = parse_url($url);
    // 不是有效url地址
    if (!is_array($parsed_url)) {
        // url异常 不处理
        return $url;
    }
    $newQuery = array();
    // 将url中的query部分解析到数组中
    parse_str($parsed_url['query'], $newQuery);
    if ($query && is_array($query)) {
        $newQuery = array_merge($newQuery, $query);
    }
    $parsed_url['query'] = http_build_query($newQuery);

    $scheme   = isset($parsed_url['scheme']) ? $parsed_url['scheme'] . '://' : '';
    $host     = isset($parsed_url['host']) ? $parsed_url['host'] : '';
    $port     = isset($parsed_url['port']) ? ':' . $parsed_url['port'] : '';
    $user     = isset($parsed_url['user']) ? $parsed_url['user'] : '';
    $pass     = isset($parsed_url['pass']) ? ':' . $parsed_url['pass']  : '';
    $pass     = ($user || $pass) ? "$pass@" : '';
    $path     = isset($parsed_url['path']) ? $parsed_url['path'] : '';
    $query    = isset($parsed_url['query']) ? '?' . $parsed_url['query'] : '';
    $fragment = isset($parsed_url['fragment']) ? '#' . $parsed_url['fragment'] : '';
    return "$scheme$user$pass$host$port$path$query$fragment";
}

 

posted @ 2016-07-26 12:23  hiwen  阅读(138)  评论(0编辑  收藏  举报