【发布时间】:2014-08-13 20:06:19
【问题描述】:
我有这个代码:
$data = new Restaurant(array('id' => $restaurant_id));
$data = $data->waitingtimes();
foreach($data as $oneTime){
echo $oneTime->value;
}
exit;
如您所见,我尝试为每个 $data 打印 value 属性,但结果为空。
但是,当我这样做时:
$data = new Restaurant(array('id' => $restaurant_id));
$data = $data->waitingtimes();
echo $data->first()->value; exit;
我得到了结果,所以$data 中绝对有值。
我尝试在这里阅读 basecollection 类文档 https://github.com/laravel/framework/blob/master/src/Illuminate/Database/Eloquent/Collection.php
但循环没有什么。
我还在这里阅读了集合类文档http://laravel.com/api/source-class-Illuminate.Database.Eloquent.Collection.html#5-73 但是没有任何关于循环的内容。
【问题讨论】:
-
嘿?你在
$data中得到了什么?试试dd($data),让我知道输出。 -
$data是Query对象,而不是集合。$data->first()执行附加了LIMIT 1的SQL 语句。您需要致电$data->get()获取实际结果。 -
那你需要使用
get()。 -
@WereWolf-TheAlpha in
$data->first()->value我得到了55这是我数据库中的真正价值,当我这样做时dd($data)我在浏览器中打印了很长的结果,你想要吗给你? -
@SergiuParaschiv 好的,我会尝试更新你。
标签: php laravel laravel-4 blade