在php函数中返回一个对象数组

时间:2011-06-03 19:42:06

标签: php arrays

我从数据库查询返回多行。

我一次只能获得一行,但我想把行放在像这样的对象数组中:

$trailheads[] = new StdClass;
Loop
{
   $trailheads[] = $trailhead; // Put each object into the array of objects 
}

但是当我尝试遍历每个数组时,我无法提取每行的值。循环返回对象并获取值的正确方法是什么?

不起作用的代码非常基本:

$returned_obj->o->trailhead_name

但实际上我希望能够遍历每个数组元素。

2 个答案:

答案 0 :(得分:0)

也许在你的for循环中尝试转换为数组,这是未经测试的,可能无法正常工作,但应该让你走上正确的轨道:

foreach ($trailheads as (array) $key){

    // $key is now an array, recast to obj if you want  
    $objkey  = (object) $key;

}

答案 1 :(得分:0)

我假设您使用的是mysql,因为您没有说...

您可以使用该功能 mysql_fetch_object()

<?php
$trailheads = array()

$result = mysql_query("select * from mytable");
while ($row = mysql_fetch_object($result, 'trailhead')) {
    $trailheads[] = $row;
}