PHP解析URL: N9 o N, A6 M; B
PHP解析url时经常使用【pathinfo】函数,但是经常会遇到各种奇葩问题,所以今天我们使用【parse_url】来解析url。 8 I# z3 @) D- B, l最开始我想着参数不多就自己直接在用户设置的url后拼接参数,代码如下:; v5 ^1 m0 d- m" U
其中【parse_url】函数是PHP内置函数,主要作用就是解析url,大致结果如下:: M, H, R9 R) l l
{! `2 b5 j% E3 a) P0 d
"scheme":"http", 9 B h7 d# s/ ?. J; J: @7 e, M "host":"test.cn", ) x# i- j3 @& F' T3 l0 g "path":"/a/c",6 M% V& ?$ E9 r% @# s
"query":"a=1&b=2"$ K' s; S+ Q- o0 x+ a
}
1 ?1 t* A8 B* f) r' X& l2 s& g
如果url只有域名和参数时,返回的结果中没有【path】这个字段。如果url中没有参数,返回的结果中也没有query这个字段 8 U0 q$ L! d( F8 V从上面的结果可以看出query没有结构化,我们需要将query进行解析成数组的形式,解析代码如下:8 a- @* { S' a/ t' X* c, q8 a