cakephp getLastInsertID()
此代码:cakephp getLastInsertID(),php,mysql,cakephp,last-insert-id,Php,Mysql,Cakephp,Last Insert Id,此代码: foreach ($arrays as $array){ $this->Model->set('bla', $array['key1']); $this->Model->set('alb', $array['key2']); $this->Model->save(); echo $this->Model->getLastInsertID() . ","; } 返回: 2,2 应返回: 1,2 我试着用 foreach ($arrays as $ar
foreach ($arrays as $array){
$this->Model->set('bla', $array['key1']);
$this->Model->set('alb', $array['key2']);
$this->Model->save();
echo $this->Model->getLastInsertID() . ",";
}
返回:
2,2
应返回:
1,2
我试着用
foreach ($arrays as $array){
$this->Model->query('insert....');
$this->Model->query('select last_insert_id()')
}
foreach($array作为$array){
$this->Model->query('insert…);
$this->Model->query('select last_insert_id()'))
}
但结果是“1,1”。。。
那么我做错了什么呢???在循环中保存时,需要首先显式调用Model::create()
尝试$this->Model->set('id','');不知怎的,我没有想到:D。。。谢谢应该先问一下。。。我会节省大量的时间和键盘。感谢create()技巧,我一直在努力工作,多亏了这个方法,我终于能够解决这个问题。
foreach ($arrays as $array){
$this->Model->create();
$this->Model->set('bla', $array['key1']);
$this->Model->set('alb', $array['key2']);
$this->Model->save();
echo $this->Model->getLastInsertID() . ",";
}