对象的`data [] = $ var`相当于什么?

时间:2011-08-16 05:30:20

标签: php oop loops

我正在遍历mysql查询并将值存储到对象中。我希望自动迭代对象,就像我将数据存储到数组中一样。

以下是我正在做的事情:

$i = 0;
foreach( $query->result() as $row )
{
    $data->$i = $row;
    $i++;
}

我想模仿下面的代码,但是对于一个对象,在上面的代码中删除了对$i的需求:

foreach( $query->result() as $row )
    $data[] = $row;

在foreach或while循环中将变量存储到对象时迭代对象的等效于$data[] = $row是什么?

注意:显然我不应该以这种方式使用对象。你能详细说明为什么会这样吗?

3 个答案:

答案 0 :(得分:4)

没有一个,因为对象不能那样工作。此外,如果你想以线性方式存储东西,那么你不应该以这种方式使用对象。

答案 1 :(得分:1)

如果要创建一个对象,可以使用foreach()进行迭代,它必须实现迭代器接口,参见。 http://php.net/iterator

答案 2 :(得分:1)

您可以使用数组存储数据,然后将其转换为对象!