返回無符號ZEROFILL ID我用這個方法來獲得最後插入的ID:笨從數據庫
$this->db->insert_id();
例如在數據庫中插入ID爲000055,但這個函數返回我只有55,怎麼能我得到完整的未簽名的zerofill id?
返回無符號ZEROFILL ID我用這個方法來獲得最後插入的ID:笨從數據庫
$this->db->insert_id();
例如在數據庫中插入ID爲000055,但這個函數返回我只有55,怎麼能我得到完整的未簽名的zerofill id?
假設你正在使用MySQL - $this->db->insert_id()
方法使用mysql_insert_id
函數 - 它返回一個整數。
因此,在不更改./system/database/drivers/mysql/mysql_driver.php
文件的情況下,我認爲沒有辦法。
爲什麼您的身份證的零填寫?這可能會導致問題,如果它返回1,因爲它會認爲它是一個二進制數而不是零填充整數。甚至可能有一個難得的機會成爲十六進制。如果你只是想讓你的ID的零填充應用程序,那麼在庫或幫助器中處理它,因爲當你將它呈現給視圖時,因爲PHP是鬆散類型的,它可能認爲你正在做一些比較或處理十六進制或二進制,而不是一個int。
如果你真的想要這樣做,你需要擴展CI_DB_mysqli_driver(或者你正在使用的任何數據庫驅動程序)並覆蓋insert_id()並確保它返回一個字符串,然後確保你總是把它當作一個字符串。不過,我強烈建議你從零填充的邏輯做起。
所以如果我改變它我應該使用哪種方法來獲得無符號zerofill? – Hello 2013-04-03 21:42:04
'insert_id'方法 – swatkins 2013-04-04 13:23:39