[CodeIgniter] Active RecordでInsertして発行されたIDを取得する
CodeIgniterで管理画面的なものを使っている時に、Insertした時にMYSQLのLAST_INSERT_IDと同じことがCodeIgniterのActive Recordでできないかと思って、調べてみました。
更新日: 2018.7.17公開日: 2017.11.22
insert_idメソッドを使う
結論から言うと、「insert_id」メソッドを使うことでMYSQLで言うところのLAST_INSERT_IDを取得することができます。
まずは、普通にinsertをします。
$this->db->insert("table", $data);
直後にinsert_idをコールします。
$last_id = $this->db->insert_id();
var_dump($last_id);
//int(1)など
簡単ですね。
MYSQLでなくても、SQLite3でも使えたのでおそらく他のデータベースでも使えると思います。