Почему parse_url возвращает фрагмент?
У меня есть следующий 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]
?
1 ответ
Решение
У вас проблема с вашим URL, амперсанд закодирован в htmlentities (&
). Следовательно parse_str
думает, фрагмент начинается там.
Попробуйте использовать html_entity_decode перед передачей URL- адреса parse_url
,