将两个雄辩的集合合并到一个对象属性中?

时间:2015-08-09 21:19:49

标签: php laravel-5 stdclass object-properties

我们可以使用stdClass在php中创建空对象,我们可以像这样添加属性:

$data = new stdClass;

$data->xyz = something;

但我们怎样才能为物业增添更多东西呢?我的意思是这样的:

$data->xyz += somethingElse;

这可能吗?

我想要做的是:我必须从数据库中获取一些数据,并且我想将两个表的记录存储在一个属性中。要从表中获取数据并将其存储在属性中,请执行以下操作:

    $data = new stdClass;

    $data->gallery = \DB::table('RestaurantMenuOptions')
        ->select('Name', 'Image')
        ->get();

    $data->gallery2 = \DB::table('Promotions')
        ->select('Name', 'Image')
        ->get();

我想要的是将它们全部存储在一个gallery属性中。顺便说一下,我使用Laravel 5。

修改1

我想要的是将从表 'RestaurantMenuOptions' 'Promotions' 调用的数据加入到$data的一个属性中。我猜是否可以加入两个变量,或者是否可以使用Eloquent从两个不相关的表中获取数据?

我到目前为止所考虑的是convert the models to array然后加入它们,但是我如何将连接的数组转换为模型以便在视图中进行?

修改2

我发现可以合并有说服力的集合,但是如果表格具有相同类型的PK并且存在具有相同PK的重复记录,则它们将被覆盖,因此我决定将集合转换为数组合并它们像他们一样访问他们:

{{ $item['key'] }}

如果某人有更好的方法可以做到这一点,我会贬低它。

1 个答案:

答案 0 :(得分:-1)

我认为更好的方法是做一个for循环而不是让它更有活力。

代码:

ruby test2.rb test1.rb
相关问题