CakePHP-尝试使用模型SaveMany()构建多个SQL插入
我正在使用CakePHP2.3.0。我有一个场景,需要在表中插入数据,但我需要根据需要插入数据的用户数量进行多次插入。如果在CakePHP-尝试使用模型SaveMany()构建多个SQL插入,cakephp,Cakephp,我正在使用CakePHP2.3.0。我有一个场景,需要在表中插入数据,但我需要根据需要插入数据的用户数量进行多次插入。如果在$userIds数组中有一个值,或在$userIds数组中有多个值,则表中只插入一行。i、 e.如果数组中有两个值,我希望在表中插入两行 我不知道如何使用与$userIds数组不同的值正确构建$message数组。在下面的输出示例中,值5被3覆盖,值3被值4覆盖 当$userIds数组中有2个或多个值时,我通过debug语句确认for循环在数组中每次都正确循环 以下是调试语
$userIds数组中有一个值,或在$userIds数组中有多个值,则表中只插入一行。i、 e.如果数组中有两个值,我希望在表中插入两行
我不知道如何使用与$userIds数组
不同的值正确构建$message数组。在下面的输出示例中,值5被3覆盖,值3被值4覆盖
当$userIds数组中有2个或多个值时,我通过debug语句确认for循环在数组中每次都正确循环
以下是调试语句的输出:
\app\Controller\ActivitiesController.php(第134行)
“5”
\app\Controller\ActivitiesController.php(第134行)
“3”
\app\Controller\ActivitiesController.php(第134行)
‘4’
\app\Controller\ActivitiesController.php(第136行)
以下是我的控制器中的代码片段:
$this->Activity->Message->create();
foreach ($userIds as $ids) {
$message = array(
'Message' => array(
'message' => 'The activity has been deleted.',
'user_id' => $ids
)
);
debug($ids);
}
debug($message);
$this->Activity->Message->saveMany($message);
每次都重置数组,而不是向其中添加一个元素。所以试着像这样改变你的命运
$message = array();
foreach ($userIds as $ids) {
$message[] = array(
'Message' => array(
'message' => 'The activity has been deleted.',
'user_id' => $ids
)
);
debug($ids);
}
太好了,这就是如何做到的。我的代码可以很好地处理这个简单的更改。谢谢祖母绿编码器!
$message = array();
foreach ($userIds as $ids) {
$message[] = array(
'Message' => array(
'message' => 'The activity has been deleted.',
'user_id' => $ids
)
);
debug($ids);
}