【发布时间】:2014-12-14 14:37:37
【问题描述】:
我想知道是否有人可以帮助我,因为我在这里开始感到沮丧......我有一个包含与图像相关的信息的数据库表。一列是“文件名”。检索到图像数组后,我想向名为“文件路径”的数组添加一个额外的键,格式为'/path/to/images' . array[$i]['filename']
够简单吧?但我似乎做不到(不使用一些荒谬的冗长代码)。这是我所拥有的:
$array = DB::table('tour_images')->where('tour_id','=',$tourID)->get();
$images = $array;
$i = 0;
foreach($array as $img){
$images[$i]['filepath'] = '/upload/tour_images/' . $img['file_name'];
$i++;
}
但我得到 'Cannot use type of stdClass as array' 我猜这是因为第一行代码返回的是 object 而不是 array ,对吧?所以我尝试使用:
$array = DB::table('tour_images')->where('tour_id','=',$tourID)->get()->toArray();
猜猜看,它不起作用。好的,现在请有人帮助我...
编辑:从上面返回的错误:'在非对象上调用成员函数 toArray()'
【问题讨论】:
-
你需要在
toArray()之前调用get()。->get()->toArray() -
@lukasgeiter 我试过了 - 请参阅编辑。谢谢。
-
为什么混合使用 foreach 和 $i?