अभी परीक्षण किया गया। यह काम करता है।
$newUsers = [
[
'username' => 'Felicia',
'age' => 27,
],
[
'username' => 'Timmy',
'age' => 71,
],
];
$columns = array_keys($newUsers[0]);
चेतावनी! मास इंसर्ट करने के दो तरीके हैं। यह एक तरीका है:
$insertQuery = $this->Users->query();
$newUsersValuesExpression = new ValuesExpression($columns, $insertQuery->typeMap()->types([]));
$newUsersValuesExpression->values($newUsers);
$insertQuery->insert($columns)
->values($newUsersValuesExpression)
->execute();
जैसा कि एनडीएम ने सुझाव दिया है, मैं इस तरह से पसंद करता हूं।
$insertQuery = $this->Users->query();
$insertQuery->insert($columns);
// you must always alter the values clause AFTER insert
$insertQuery->clause('values')->values($newUsers);
$insertQuery->execute();