parse_url()

把URL解析成需要的部分

parse_url() 函数可以解析 URL,返回其组成部分。它的用法如下:

array parse_url ( string url )
此函数返回一个关联数组,包含现有 URL 的各种组成部分。如果缺少了其中的某一个,则不会为这个组成部分创建数组项。组成部分为:

scheme - 如 http
host
port
user
pass
path
query - 在问号 ? 之后
fragment - 在散列符号 # 之后
此函数并不意味着给定的 URL 是合法的,它只是将上方列表中的各部分分开。parse_url() 可接受不完整的 URL,并尽量将其解析正确。此函数对相对路径的 URL 不起作用。

<?php
    $url = "http://www.nowamagic.net/welcome/";
    $parts = parse_url($url);

    print_r($parts);
?>
程序运行结果如下:

Array ( [scheme] => http [host] => www.nowamagic.net [path] => /welcome/ )

<?php
    $url = ‘http://username:[email protected]/path?arg=value#anchor‘;
    print_r(parse_url($url));
    echo parse_url($url, PHP_URL_PATH);
?>
程序输出:

Array
(
    [scheme] => http
    [host] => hostname
    [user] => username
    [pass] => password
    [path] => /path
    [query] => arg=value
    [fragment] => anchor
)
/path
可以看到,可以很容易分解出一个URL的各个部,那如果要拿指定的部分出来的话也很容易,如:

echo parse_url($url, PHP_URL_PATH);
就是在第二个参数中,设定如下的参数:PHP_URL_SCHEME, PHP_URL_HOST, PHP_URL_PORT, PHP_URL_USER, PHP_URL_PASS, PHP_URL_PATH, PHP_URL_QUERY or PHP_URL_FRAGMENT.
时间: 2024-08-28 18:11:36

parse_url()的相关文章

[单选题]parse_url()函数的功能是:

验证URL,并返回给定的组件 将URL分裂成标准URL组件 全部都不正确 返回解码的URL php parse_url 函数教程 来源:   时间:2013-09-05 19:01:42   阅读数:13954 分享到: 2 [导读] php parse_url 函数教程parse_url ( PHP 4中, PHP 5中) parse_url -解析URL并返回其组成部分 描述 混合parse_url (字符串$网址[摘要$部分= -1 ] ) 此功能解析一个URL并返回一个关联数组含 php

解析url函数parse_url()

(PHP 4, PHP 5, PHP 7) parse_url - 解析 URL,返回其组成部分 mixed parse_url ( string $url [, int $component = -1 ] ) 本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分. 本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分.不完整的 URL 也被接受,parse_url()会尝试尽量正确地将其解析. 参数 url:要解析的 URL.无效字符将使用 _ 

自定义的parse_url逆向函数http_build_url,将数组转为url字符串

parse_url函数可以讲一个url字符串解析成一个数组,但是php中似乎没有parse_url的逆向函数来讲一个解析出来的数组组合成url字符串,只有一个http_build_query用来将数组组合成query string.于是我自己写了一个http_build_url函数将parse_url解析出来的数组组合成完整的url. /** * 根据parse_url格式的数组生成完整的url * @param array $arr 接受parse_url解析出来的所有参数,完整参数实例如下:

写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名?pathinfo文件路径&amp; parse_url解析url &amp; basename路径中文件名

例如: http://www.sina.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php 方案1 <?php function getExt($url){ $arr = parse_url($url); $file = basename($arr['path']); $ext = explode(".",$file); return $ext[1]; } echo getExt("http://www.sina.com.cn/abc/d

php URL解析函数parse_str和parse_url的区别

php parse_str函数将查询字符串解析到变量中,parse_url函数用于解析整个URL,并返回其组成部分.本文章向大家介绍这两个函数在解析URL时的使用方法和区别. php parse_str函数 php parse_str函数将查询字符串解析到变量中. parse_str函数有两个参数,第一个参数为需要解析的查询字符串并且是必须的,第二个参数用于设置接收解析查询字符串的变量,第二个参数是可选的.请看下面实例: 这里我们使用了parse_url来获取URL的查询字符串,parse_ur

URL处理几个关键的函数parse_url、parse_str与http_build_query

parse_url() 该函数可以解析 URL,返回其组成部分.它的用法如下: array parse_url(string $url) 此函数返回一个关联数组,包含现有 URL 的各种组成部分.如果缺少了其中的某一个,则不会为这个组成部分创建数组项.组成部分为: scheme - 如 http host - 如 localhost port - 如 80 user pass path - 如 /parse_str.php query - 在问号 ? 之后  如 id=1&category=ph

php parse_url()函数

parse_url()函数是将输入的URL结构分解成几个部分来将其转变为一个关联数组 组成URL的几个基本部分为:scheme(协议名),host(主机名),port(端口号),path(文件路径),query(查询参数),user(用户名),pass(密码)如:http://www.example.com/index.php?week=1#demo scheme:http host:www.example.com port:80 user: pass: path:view.php query:

js parse_url

<script type="text/javascript"> var url = window.location.search;//定义变量window.location.href function parse_url(_url){ //定义函数 var pattern = /(\w+)=(\w+)/ig;//定义正则表达式 var parames = {};//定义数组 url.replace(pattern, function(a, b, c){ parames[b]

php使用http_build_query,parse_url,parse_str创建与解析url详解

1.http_build_query string http_build_query ( mixed $query_data [, string $numeric_prefix [, string $arg_separator [, int $enc_type = PHP_QUERY_RFC1738 ]]] ) 使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串. 参数: query_data 可以是数组或包含属性的对象. 一个query_data数组可以是简单的一维结

php parse_url()函数和parse_str()函数

1.parse_url():解析URL,并返回其组成部分 原型:mixed parse_url ( string $url [, int $component = -1 ] ) 此函数返回一个关联数组,包含现有 URL 的各种组成部分.如果缺少了其中的某一个,则不会为这个组成部分创建数组项.组成部分为: scheme - 如 http host port user pass path query - 在问号 ? 之后 fragment - 在散列符号 # 之后 ?php $url = 'http