首页 > 解决方案 > Foreach 插入 Laravel 5 Eloquent

问题描述

尝试使用foreach循环插入记录。

$test = array(123, 231, 321, 543);

foreach($test as $key) {
    $data = array('name' => 'test_name', test' => $test[$key], 'property' => 'test_property');
    Test_table::insert($data);    
}

使用 aforeach会产生错误Undefined offset: 123

以这种方式插入虽然有效:

 $data = array(
    array('name' => 'test_name', test' => 123, 'property' => 'test_property'), 
    array('name' => 'test_name', test' => 231, 'property' => 'test_property'), 
    array('name' => 'test_name', test' => 321, 'property' => 'test_property'), 
    array('name' => 'test_name', test' => 543, 'property' => 'test_property'),
  );
 Test_table::insert($data);  

怎么了?

标签: phplaravel-5eloquent

解决方案


$test = array(123, 231, 321, 543);
foreach($test as $key) {
    $data = array('name' => 'test_name', 'test' => $key, 'property' => 'test_property');
    Test_table::insert($data);    
}

这应该有效。您不需要$test按索引访问,因为您已经拥有$key实际上是数组中的值的值。


推荐阅读