【发布时间】:2019-10-24 01:22:37
【问题描述】:
我无法通过 Laravel ORM 使用 Model::create($mainArray) 方法在一个查询中插入多行
我尝试将多个数组放在一个主数组中,该数组希望通过一个查询插入数据库,而不是 foreach 和多个查询。
我的 $mainArray 如下所示:
array:49 [▼
0 => array:17 [▼
"time" => "2019-06-09 07:00:00"
"summary" => "Partly Cloudy"
"icon" => "partly-cloudy-day"
"precipIntensity" => 0
"precipProbability" => 0
"temperature" => 21.34
"apparentTemperature" => 21.34
"dewPoint" => 14.02
"humidity" => 0.63
"pressure" => 1024.32
"windSpeed" => 2.72
"windGust" => 7.77
"windBearing" => 246
"cloudCover" => 0.43
"uvIndex" => 3
"visibility" => 13.2
"ozone" => 324.62
]
1 => array:17 [▼
"time" => "2019-06-09 08:00:00"
"summary" => "Clear"
"icon" => "clear-day"
"precipIntensity" => 0
"precipProbability" => 0
"temperature" => 23.22
"apparentTemperature" => 23.22
"dewPoint" => 13.6
"humidity" => 0.55
"pressure" => 1024.09
"windSpeed" => 0.87
"windGust" => 7.69
"windBearing" => 205
"cloudCover" => 0.21
"uvIndex" => 5
"visibility" => 16.09
"ozone" => 324
]
因此,当我尝试使用 Model::create() 方法在 foreach 中逐一插入时,这是可行的。但是当我尝试 Model::create($mainArray) 时,我收到了这个错误消息:
错误异常 (E_WARNING) preg_match() 期望参数 2 是字符串,给定数组
【问题讨论】:
标签: php eloquent laravel-5.8