我想将两个数据搜索结果合并到一个数组中,我使用array_merge但有一个array_merge()错误:参数1不是数组,如何将$供应商的雄辩结果转换成数组并与$ plucked结合起来?
$vendor_detail = VendorDetail::where('vendor_id',$id)->get();
$plucked = $vendor_detail->pluck('vendor_profile_value','vendor_profile_name');
$coba = array_merge($vendor,$plucked);
$ plucked已经是一个数组,我认为这里的问题是$ vendor还不是一个数组,
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
根据您的描述,问题在于$vendor
变量不是数组,而您正尝试使用array_merge()
函数将其与已确认为数组的$plucked
合并。要解决这个问题,首先需要确保$vendor
变量也是一个数组。如果$vendor_detail
是从数据库查询得到的结果集,并且您希望将它转换成一个数组,可以使用Laravel集合的toArray()
方法。
下面是修改后的代码示例:
$vendor_detail = VendorDetail::where('vendor_id', $id)->get();
$plucked = $vendor_detail->pluck('vendor_profile_value', 'vendor_profile_name')->toArray(); // 确保$plucked是数组
// 假设$vendor_detail本身就是你需要的数据,直接转换为数组
$vendor = $vendor_detail->toArray();
$coba = array_merge($vendor, $plucked);
在这个例子中,我假设您想要将整个$vendor_detail
查询结果转换为数组作为$vendor
,然后与$plucked
数组合并。如果您实际上指的是$vendor_detail
中的特定数据或者有其他特定需求,请根据实际情况调整代码。