6

私は次のURLを持っています:
http ://sub.mysite.com/store/?store = Fine + Ting&storeid = 3726&test1 = value1&test2 = value2

使用print_r(parse_url($url))すると、次のようになります。

Array ( 
  [scheme] => http 
  [host] => sub.mysite.com 
  [path] => /store/ 
  [query] => store=Fine+Ting& 
  [fragment] => 038;storeid=3726&test1=value1&test2=value2 
) 

ドキュメントによるとfragment、ハッシュマーク#の後にのみ取得する必要があります。

では、なぜparse_urlフラグメントが返されるのですか?それはあるべきではありません[query]か?

4

1 に答える 1

10

URLに問題があり、アンパサンドはhtmlentities(&)にエンコードされています。したがってparse_str、フラグメントはそこから始まっていると思います。

URLをに渡す前にhtml_entity_decodeを使用してみてくださいparse_url

于 2011-11-02T21:17:55.450 に答える