PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

Home » Networking » Net_URL » Bug #1558

_parseRawQuerystring() fails if arg_separator.input is more than one character

Details

Submitted2004-06-04 19:16 UTC
Fromphp040604 at awks dot org
Assignedrichard
StatusClosed
PackageNet_URL
PHP Version4.3.6
OSAll
Roadmaps(Not assigned)

Comments

[2004-06-04 19:16 UTC] php040604 at awks dot org

Description:
------------
Hi, according to the PHP docs, arg_separator.input can be
set to a string, and any character in the string should
be considered. So if it's set to "&;", either "&" or ";"
is a possible separator.

The fix is to put brackets around the value of
arg_separator.input when creating the regex. Here is a
patch: http://bnt.com/~awk/Net_URL.patch

Reproduce code:
---------------
require_once 'Net/URL.php';
ini_set('arg_separator.input', ';&');
$obj =& new Net_URL('http://example.com/foo?bar=1;baz=2');
print_r($obj->querystring);

Expected result:
----------------
Array
(
[bar] => 1
[baz] => 2
)

Actual result:
--------------
Array
(
[bar] => 1;baz=2
)

[2004-06-05 14:09 UTC] richard at phpguru dot org

Thank you for your bug report. This issue has been fixed
in the latest released version of the package, which you can download at
http://pear.php.net/packages.php