使用php添加属性foreach对象
我有两个对象数组:使用php添加属性foreach对象,php,arrays,laravel,laravel-5,Php,Arrays,Laravel,Laravel 5,我有两个对象数组: $seo_items = collect($resource->items)->values(); $api_items = collect($api_items)->values(); 我想迭代这些元素,并将属于$api\u items数组的属性size添加到$seo\u items数组中 foreach($seo_items as &$seo_item) { foreach($api_items as $item)
$seo_items = collect($resource->items)->values();
$api_items = collect($api_items)->values();
我想迭代这些元素,并将属于$api\u items
数组的属性size添加到$seo\u items
数组中
foreach($seo_items as &$seo_item)
{
foreach($api_items as $item)
{
if($item->article_id == $seo_item->article->article_erp_id)
{
$seo_item->article->size == $item->size;
$items_result[] = $seo_item;
}
}
}
问题是我无法分配此值,因为php
报告此错误:
Undefined property: stdClass::$size
我怎样才能做到这一点呢?似乎这是打字的结果
您使用了==(比较运算符),它与不存在的属性进行比较,而不是赋值。
改成
$seo_item->article->size = $item->size;
应该能解决你的问题 请显示$seo_项和api_项的结果集
$seo_item->article->size = $item->size;