如何向类对象添加值然后将它们放入数组?

时间:2015-04-25 17:23:28

标签: php arrays mysqli

我试图将查询嵌入到类中的变量中。
如此:

    class FooBar{
        public $bar;
    }


    $result = array();

    $db = mysqli_connect("127.0.0.1", "foo", "foo", "Farm");
    $sql = "SELECT * FROM `Lot`;";
    $result = mysqli_query($db, $sql);

    while($row = mysqli_fetch_assoc($result)){
        $foo = new FooBar;            
        $foo->$bar = $row["cow"];

        array_push($result, $foo);
    }

但是当我使用print_r($result)打印数组时,我只是将其作为输出:

Array( )

我希望看到存储在数组中的对象。

我哪里出错了?我该怎么办?

1 个答案:

答案 0 :(得分:0)

您正在重复使用$result变量。它是一个数组,但您将其重用为MySQLi资源。

同样$foo->$bar应为$foo->bar

class FooBar{
    public $bar;
}


$result = array();

$db = mysqli_connect("127.0.0.1", "foo", "foo", "Farm");
$sql = "SELECT * FROM `Lot`;";
$query_result = mysqli_query($db, $sql);

while($row = mysqli_fetch_assoc($query_result)){
    $foo = new FooBar;            
    $foo->bar = $row["cow"];

    array_push($result, $foo);
}

var_dump($result);