Edit report at http://bugs.php.net/bug.php?id=54180&edit=1
ID: 54180
User updated by: gasper at kozak dot si
Reported by: gasper at kozak dot si
Summary: parse_url() incorrectly parses path when ? in
fragment
Status: Open
Type: Bug
Package: URL related
PHP Version: 5.3.5
Block user comment: N
Private report: N
New Comment:
This works if '?' is also present _before_ the fragment:
$p =
parse_url('http://example.com/path/script.html?query#fragment?data');
print_r($p);
Outputs correctly:
Array
(
[scheme] => http
[host] => example.com
[path] => /path/script.html
[query] => query
[fragment] => fragment?data
)
Previous Comments:
------------------------------------------------------------------------
[2011-03-07 14:29:46] gasper at kozak dot si
Description:
------------
It seems that parse_url() ignores the path when fragment identifier
includes a
question mark (?).
A few similar bugs were already reported (and fixed), but none of them
is the
same; this one affects the path part of the url.
Test script:
---------------
$p = parse_url('http://example.com/path/script.html#fragment?data');
print_r($p);
Expected result:
----------------
Array
(
[scheme] => http
[host] => example.com
[path] => /path/script.html
[fragment] => fragment?data
)
Actual result:
--------------
Array
(
[scheme] => http
[host] => example.com
[fragment] => fragment?data
)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=54180&edit=1