在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
明白了HTTP请求的头信息后,我们还需要对请求地址有所了解。再者,HTTP GET请求是靠URL实现的,所以了解URL的构造,处理URL的重要性不言而喻。 在PHP中我们用parse_url()函数来处理URL信息。 其函数原型如下:
其正确的返回值如下: scheme http 协议信息 host 主机信息 port 端口号 user 用户名 pass 密码 path 站内路径 query 在问号 ? 之后的查询信息 fragment 在散列符号 # 之后 锚点信息 Hash信息 下面是一个典型的URL字符串,我们对其用parse_url()解析,并输出其结果数组。 $url='https://zbs:[email protected]:8080/home/index.html?gender=male&write=code#anchor'; $arr=parse_url($url); array (size=8) 'scheme' => string 'https' 'host' => string 'www.baidu.com' 'port' => int 8080 'user' => string 'zbs' 'pass' => string 'mypass' 'path' => string '/home/index.html' 'query' => string 'gender=male&write=code' 'fragment' => string 'anchor' 另外,我们还可以对第二个参数赋值,指定要返回的URL部分,对应的URL_CONST取值如下: scheme:PHP_URL_SCHEME, host:PHP_URL_HOST, port:PHP_URL_PORT, user:PHP_URL_USER, pass:PHP_URL_PASS, path:PHP_URL_PATH, query:PHP_URL_QUERY, fragment:PHP_URL_FRAGMENT. 例如我们要指定返回地址的查询字段信息: $url='https://zbs:[email protected]:8080/home/index.html?gender=male&write=code#anchor'; $arr=parse_url($url,PHP_URL_QUERY);//string '/home/index.html 理解了如何拆分URL信息后,我们也更需要学会拼合URL信息,拼合URL信息有一个专门的函数http_build_url(),但此函数因其处理繁琐,一般较少使用,我们常用字符串来拼合URL,在处理较多的查询信息(query_string)时,我们会用http_build_query()函数。 http_build_query()函数能帮我们将一个关联数组快速拼合成一个查询字符串,它甚至可以将一个对象分析拼合为一个查询字符串,但要注意,它只能保留修饰符为"public"的"属性",其余信息将会被舍弃。 例: $info=['run'=>'10km','eat'=>'3kg']; var_dump(http_build_query($info));//string 'run=10km&eat=3kg' class Msg{ public $attr_public="value_public"; protected $attr_protected="value_protected"; private $attr_private="value_private"; function foo(){ echo "foo"; } } $msg=new Msg(); var_dump(http_build_query($msg));//string 'attr_public=value_public'
另:JS获取当前url信息: Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问,它包含了有关当前 URL 的信息。 Location 对象属性 属性 描述 hash URL锚点信息 host 主机名和当前 URL 的端口号 hostname 当前URL的主机名 href 完整的URL pathname 当前URL的路径部分 port 当前URL的端口号 protocol 当前URL的协议 search 查询字符串 |
2022-08-17
2022-11-06
2022-07-29
2022-08-18
2022-08-13
请发表评论