Doc #81508 [Opn->Nab]: http_build_query returns empty string given ArrayIterator as input

[email protected]
Newsgroups php.doc.bugs
Message-ID <[email protected]>
Edit report at https://bugs.php.net/bug.php?id=81508&edit=1

 ID:                 81508
 Updated by:         [email protected]
 Reported by:        mintobit at gmail dot com
 Summary:            http_build_query returns empty string given
                     ArrayIterator as input
-Status:             Open
+Status:             Not a bug
 Type:               Documentation Problem
 Package:            URL related
 Operating System:   Linux
 PHP Version:        7.4.24
 Block user comment: N
 Private report:     N

 New Comment:

> Calling get_object_vars() on an ArrayObject instance will now always return the
> properties of the ArrayObject itself (or a subclass). Previously it returned the
> values of the wrapped array/object unless the ArrayObject::STD_PROP_LIST flag
> was specified.
>
> Other affected operations are:
>
> * ReflectionObject::getProperties()
> * reset(), current(), etc. Use Iterator methods instead.
> * Potentially others working on object properties as a list, e.g. array_walk().

The third bullet point is the one that affects http_build_query().


Previous Comments:
------------------------------------------------------------------------
[2021-10-05 15:28:03] mintobit at gmail dot com

Description:
------------
Have not found anything related here https://www.php.net/manual/en/migration74.incompatible.php. Would appreciate if somebody can explain why this happened: wondering if this is expected and should be documented.

Test script:
---------------
<?php

$array = [
    ['ids' => [1,2,3,4]],
    ['key' => 1]
];

var_dump(http_build_query(new ArrayIterator($array)));

Expected result:
----------------
string(92) "0%5Bids%5D%5B0%5D=1&0%5Bids%5D%5B1%5D=2&0%5Bids%5D%5B2%5D=3&0%5Bids%5D%5B3%5D=4&1%5Bkey%5D=1"

Actual result:
--------------
string(0) ""


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=81508&edit=1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.