PHP mysqli insert_id() 函数

定义和用法

mysqli_insert_id() 函数返回上次查询生成的 id(使用 AUTO_INCREMENT 生成)。

实例

例子 1 - 面向对象风格

假设 "Persons" 表有一个自动生成的 id 字段。返回上次查询的 id:

<?php
$mysqli = new mysqli("localhost","my_user","my_password","my_db");

if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}

$mysqli -> query("INSERT INTO Persons (FirstName, LastName, Age) VALUES ('Glenn', 'Quagmire', 33)");

// 打印自动生成的 id
echo "New record has id: " . $mysqli -> insert_id;

$mysqli -> close();
?>

例子 2 - 过程式风格

假设 "Persons" 表有一个自动生成的 id 字段。返回上次查询的 id:

<?php
$con = mysqli_connect("localhost","my_user","my_password","my_db");

if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  exit();
}

mysqli_query($con, "INSERT INTO Persons (FirstName, LastName, Age) VALUES ('Glenn', 'Quagmire', 33)");

// 打印自动生成的 id
echo "New record has id: " . mysqli_insert_id($con);

mysqli_close($con);
?>

语法

面向对象风格:

$mysqli -> insert_id

过程式风格:

mysqli_insert_id(connection)
参数 描述
connection 必需。指定要使用的 MySQL 连接。

技术细节

返回值:

表示上次查询更新的 AUTO_INCREMENT 字段值的整数。

如果没有更新或没有 AUTO_INCREMENT 字段,则返回零。

PHP 版本: 5+