Bug #11168 Updated: Problem with serializing more dimensional array with references ...

From: Date: Mon, 03 Sep 2001 18:59:28 +0000
Subject: Bug #11168 Updated: Problem with serializing more dimensional array with references ...
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-64997@lists.php.net to get a copy of this message
ID: 11168
Updated by: joey
Reported By: maverick@wallstreet-develop.de
Old Status: Open
Status: Closed
Bug Type: Arrays related
Operating System: RedHat
PHP Version: 4.0.5
New Comment:

This is fixed in CVS. It will be part of 4.0.7. Thanks
for both the report and tracking down the change. :)

Previous Comments:
------------------------------------------------------------------------

[2001-09-02 04:44:39] sander@php.net

Well... I thought serialize couldn't handle references at all... but it can (the manual
confirms that). So it's not a feature request.

But there IS a bug seomwhere... look at the following output made with PHP-4.0.6 (tested on Windows
2000 and Debian Linux):

Wrong:
Array
(
    [0] => Array
        (
            [0] => Ape1
            [one] => Ape1
        )

    [1] => Array
        (
            [0] => Ape2
            [two] => Array
 *RECURSION*
        )

)
Right:
Array
(
    [0] => Array
        (
            [0] => Ape1
            [one] => Ape1
        )

    [1] => Array
        (
            [0] => Ape2
            [two] => Ape2
        )

)

print_r($wrong_a[1][two]); results in:
Array
(
    [0] => Ape2
    [two] => Array
        (
            [0] => Ape2
            [two] => Array
                (
                    [0] => Ape2
                    [two] => Array
 *RECURSION*
                )

        )

)

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

[2001-09-01 22:41:51] joey@php.net

I'm afraid I just don't see the "bug" here. On
my machine, this shows:

Wrong:
Array
(
    [0] => Array
        (
            [0] => Ape1
            [one] => Ape1
        )

    [1] => Array
        (
            [0] => Ape2
            [two] => Ape2
        )

)
Right:
Array
(
    [0] => Array
        (
            [0] => Ape1
            [one] => Ape1
        )

    [1] => Array
        (
            [0] => Ape2
            [two] => Ape2
        )

)

What's the problem?

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

[2001-08-31 11:10:21] sander@php.net

Not a bug. 
Making it a feature request.
Duplicate of 10863.

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

[2001-05-29 08:17:03] maverick@wallstreet-develop.de

Here is the smallest programm I could make to reproduce the problem.

<?
    $a[0][0]="Ape1";
    $a[1][0]="Ape2";
    $a[0][one]=&$a[0][0];
    $a[1][two]=&$a[1][0];

    $wrong_a=unserialize( serialize ( $a) );
    echo "Wrong:\n";
    print_r( $wrong_a );
    echo "Right:\n";
    print_r( $a );
?>

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



Edit this bug report at http://bugs.php.net/?id=11168&edit=1



Thread (1 message)

  • joey@php.net
  • Unknown Message
    • joey@php.net
« previous php.dev (#64997) next »