Zend framework ZF最后插入的id

Zend framework ZF最后插入的id,zend-framework,zend-db,Zend Framework,Zend Db,即使在重载页面上,该代码是否也会提供记录的最后一个插入id db = Zend_Db_Table::getDefaultAdapter(); $db->insert($this->_name, $fields_values); $idAddress = $db->lastInsertId($this->_name); 问候 AndreaZend\u Db\u Adapter\u Abstract::lastInsertId()方法是PDO::lastInse

即使在重载页面上,该代码是否也会提供记录的最后一个插入id

  db = Zend_Db_Table::getDefaultAdapter();
  $db->insert($this->_name, $fields_values);
  $idAddress = $db->lastInsertId($this->_name);
问候
Andrea

Zend\u Db\u Adapter\u Abstract::lastInsertId()方法是
PDO::lastInsertId()的代理。根据文件:

PDO::lastInsertId-返回最后插入的行或序列值的ID

注意:

此方法可能不会在不同的PDO驱动程序之间返回有意义或一致的结果,因为底层数据库甚至可能不支持自动递增字段或序列的概念

现在你知道了。用它作为你自己的风险

我正在使用这个

db = Zend_Db_Table::getDefaultAdapter();
$lastInsertId = $db->insert($this->_name, $fields_values);

可能是检索id的最佳方法。您能给我更多有关此函数的详细信息吗?或者一个如何使用它的例子?thx;)
public function saveData(array $data) {
    $this->_setName('user');

    // this will return all field name for user table in $field variable
    $fields = $this->info($this->getConstCol());

    // By this foreach loop we will set data in $data array
    foreach ($data as $field => $value) 
    {
        if (!in_array($field, $fields)) 
        {
            unset($data[$field]);
        }
    }
    // It will call insert function of (Zend_Db_Table_Abstract Parent of Zend_Db_Table)
    // It will return $pkData which is primary key for user table

    return $this->insert($data); // It will return last insert ID
 }