我试图在foreach循环中实现下面的逻辑,其中$rooms是返回的数据库对象。我想把数据分成5个不同的数组,每个数组的大小取决于从数据库返回的房间数量。每当我实现下面的函数时,它都会为我提供一个对未定义方法stdClass::number_format()的调用,我认为我的数组将被转换为stdClass。我浏览了一下网站,发现有人也有同样的问题,但没有解决。如何在php中执行此操作?
提前感谢
代码:
...
$rooms = $db->query($sql, PDO::FETCH_OBJ);
$barray = array();
$rarray = array();
$darray = array();
$latarray = array();
$lonarray = array();
$i = 0;
foreach ($rooms as $room):
$barray[i] = $room->Bldg;
$rarray[i] = $room->Room;
$darray[i] = $room->number_format($room->D,9);
$latarray[i] = number_format($room->Latitude,7,".","");
$lonarray[i] = number_format($room->Longitude,7,".","");
$i = $i + 1;
endforeach
?>
$darray[i] = $room->number_format($room->D,9);
应该是…
$darray[i] = number_format($room->D,9);