在laravel中合并两个数组值

时间:2016-10-13 12:15:55

标签: php arrays laravel

我想在laravel 5.3中合并两个数组。我有变量'$ type'返回

db.bio_data.marks_obtained.requires = IS_EMPTY_OR(
IS_INT_IN_RANGE(0, db.bio_data.total_mark))

来自查询

TypeError: int() argument must be a string or a number, not 'Field'

我想与返回

的数组$ type1合并
`Illuminate\Support\Collection Object ( [items:protected] => Array ( [1] => rinu )`

我尝试合并并将其存储在$ type0;

$type0=DB::table('users')->where('name','=',$head)->pluck('name','id');

它返回错误的值

Illuminate\Support\Collection Object ( [items:protected] => Array ( [2] => john ) ) 
Illuminate\Support\Collection Object ( [items:protected] => Array ( [3] => dinesh ) )
Illuminate\Support\Collection Object ( [items:protected] => Array ( [4] => mahesh ) ) 
Illuminate\Support\Collection Object ( [items:protected] => Array ( ) )

$type1=DB::table('users')->where('name','=',$head)->pluck('name','id');

2 个答案:

答案 0 :(得分:1)

您似乎每个值都有一个Collection。所以你可能是独立获取每个值而不是一次性获取。

您的问题可能通过使用whereIn而不是where来解决。

$result = DB::table('users')
            ->whereIn('name', ['John', 'Dinesh', 'Mahesh'])
            ->get();

答案 1 :(得分:0)

如果您想接收合并array(而不是collection),可以使用toArray()array_merge()函数:

$mergedArray = array_merge($type0->toArray(), $type1->toArray());