cakephp getLastInsertID()

时间:2013-11-24 20:11:14

标签: 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 $array){
    $this->Model->query('insert....');
    $this->Model->query('select last_insert_id()')
    }

但返回“1,1”...... 我做错了什么?

1 个答案:

答案 0 :(得分:2)

在循环内保存时,需要先显式调用Model :: 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() . ",";
}