获取数组结果然后与数据库配对

时间:2018-12-30 14:57:45

标签: php database laravel laravel-4 eloquent

我正在尝试将数组值与数据库列一起传递,但结果始终为null。在我的数据库中已经有id和ref_num列。

架构表

Schema::create('products', function($table)
        {
            $table->increments('id')->unsigned();
            $table->string('ref_num', 50);
});

代码

$items = Input::get('ref_num');

$ref_nums      = array_unique(array_pluck($items, 'ref_num'));
$ref_num_array = Product::whereIn('ref_num', $ref_nums)->lists('id', 'ref_num');

返回结果

$items = [ 
           [
             "ref_num" => "12345"
           ]
         ]
$ref_nums = [0 => 12345]
$ref_num_array = []

期望结果

$ref_num_array = [12345 => 1001]

我也尝试过

$ref_num_array = DB::table('products')->whereIn('ref_num', $ref_nums)->lists('id', 'ref_num');

它返回了预期结果,但出现错误“没有模型查询结果”。 另外,我在产品模型中使用了trait

0 个答案:

没有答案