如何将数组值保存为mysql数据库中的每条记录

时间:2016-12-25 14:57:51

标签: php mysql laravel

如何在sql表中保存以下数组值?

Array (
   [0] => "/path/to/file/file_name1.jpeg"
   [1] => "file_name1.jpeg"
)
Array (
   [0] => "/path/to/file/file_name2.jpeg"
   [1] => "file_name2.jpeg"
)

以下是我的表结构,

id - int - auto inc
path - varchar(200)
name - varchar(50)

先谢谢。

3 个答案:

答案 0 :(得分:2)

您可以使用insert()方法插入数据数组:

$data = [
    ['path' => '/path/to/file/file_name1.jpeg', 'name' => 'File 1'],
    ['path' => '/path/to/file/file_name2.jpeg', 'name' => 'File 2'],
    ['path' => '/path/to/file/file_name3.jpeg', 'name' => 'File 3'],
];

Model::insert($data);

或者:

....
DB::table('some_table')->insert($data);

答案 1 :(得分:0)

您可以使用foreachcreate方法:

foreach ($array as $key => $value) {
    ModelName::create(['path' => $value[0], 'name' => $value[0]]);
}

请务必在模型的可填写属性中添加pathname

答案 2 :(得分:0)

您可以使用以下

添加多个值
$data = array(
    array('name'=>'value', 'path'=>'value'),
    array('name'=>'value', 'path'=>'2048'),
    //...
);

Model::insert($data);

你可以在这里找到更多 https://laravel.com/docs/5.3/queries#inserts