在php中从对象中检索数据

时间:2014-04-17 10:58:11

标签: php mysql laravel

使用以下距离查询成功从MySQL中检索$competitors ...

$competitors = DB::table('homes')
    -> select(array('*', DB::raw('SQRT(POW('.$Eastings.' - `Eastings`,2) + POW('.$Northings.' - `Northings`,2)) AS distance')))
    -> having('distance', '<', $micromarket_size)
    -> get();

...我试图检索我得到的数据,特别是费用和占用参数。我尝试通过执行以下操作来访问数据:

$competitors->id[2];

但是得到错误:

  

尝试获取非对象的属性

然后我想我会遍历所有竞争对手:

foreach ($competitors as $competitor) {
    $i=0;
    $id[$i]           = $competitor->id;
    $fees[$i]         = $competitor->minSingleCareFee;
    $occupancy[$i]    = $competitor->Average_Occupancy;
    $i = $i + 1;
};

然后尝试以下方法:

echo $id[2];

但我仍然收到错误。任何帮助表示赞赏!

3 个答案:

答案 0 :(得分:0)

试试这个

echo '<pre>';
var_dump($competitors);
echo '</pre>';

 $queries = DB::getQueryLog();
 $last_query = end($queries);
 echo $last_query;
 die();

并在phpmyadmin或任何其他

中运行sql查询

答案 1 :(得分:0)

编辑:

所以我想通过转$competitors[i]->id而不是$competitors->id[i]来简单地访问这些属性;

感谢您的帮助!

答案 2 :(得分:0)

在您的示例中,$competitors是一个集合,因此您可以像这样循环:

foreach($competitors as $competitor) {
    echo $competitor->id; // use other properties like same way
}