'PHP array_push overwriting the pushed data

I seeing a rare behavior of the array_push php function. It's like when I'm looping through the result rows of the query and pushing the complete array of data into a 'parent' array ($rdo), the values are beeing modified with the ones of the last row added.

This is my code:

$rdo = array();

if($sentencia = $general_con->prepare("SELECT monthly_price, name FROM subscription_plan WHERE deleted=0"))
{
    $sentencia->execute();

    $sentencia->store_result();
    $num_of_rows = $sentencia->num_rows;

    $sentencia->bind_result($row['monthly_price'], $row['name']);

    while($sentencia->fetch())
    {
        array_push($rdo, $row);

        echo print_r($rdo,1).'<br/><br/>';
    }
    $sentencia->close();
    die();
}

And this is the result:

enter image description here

php


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source