PHP Conference Japan 2024

mysqli_stmt::$insert_id

mysqli_stmt_insert_id

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::$insert_id -- mysqli_stmt_insert_id取得前一個 INSERT 操作產生的 ID

說明

物件導向風格

程序式風格

mysqli_stmt_insert_id(mysqli_stmt $statement): int|string
警告

此函式目前沒有說明文件;僅提供其參數列表。

新增筆記

使用者貢獻的筆記 2 則筆記

hgernhardt at tcnewengland dot org
13 年前
需要注意的是,使用 mysqli_stmt->insert_id 不會在每次執行預備插入語句時都返回唯一的 ID。實際上,它似乎返回的是第一次插入的 ID。如果您使用相同的預備語句執行多次插入(對一個給定的語句調用一次 mysqli_stmt::prepare 和多次調用 mysqli_stmt::execute()),並且需要保留每次插入的唯一 ID,請使用 mysqli_connection->insert_id。
Aurelien Marchand
9 年前
對於使用零填充 ID 的使用者要注意,mysqli_stmt::$insert_id 會返回一個整數。換句話說,如果查詢返回的 ID 是 #000099,則 mysqli_stmt::$insert_id 產生的值現在是 #99。

除了使用 sprintf('%06d',$id) 之外,我還沒有找到解決這個問題的方法,但這假設您事先知道 ID 的大小。
To Top