我向数据库发布了一个新行,但希望使用medoo在响应中返回新的自动增加的id.这似乎是生成一个新的空行并返回该id.
<?php
// Independent configuration
require 'medoo.php';
$database = new medoo(array(
// required
'database_type' => 'mysql',
'database_name' => 'db',
'server' => 'server',
'username' => 'user',
'password' => 'pw'
));
$database->insert("properties", array(
"name" => $_POST['name'],
"address" => $_POST['address'],
"address2" => $_POST['address2'],
"city" => $_POST['city'],
"state" => $_POST['state'],
"zip" => $_POST['zip'],
"lat" => $_POST['lat'],
"lng" => $_POST['lng'],
"website" => $_POST['website']
));
$last_id = $database->insert("properties", array(
"propertyId" => "propertyId"
));
$propertyId = array(propertyId => $last_id);
echo json_encode($propertyId);
?>
Run Code Online (Sandbox Code Playgroud)
该insert()方法返回最后一个插入ID.
$insertId = $database->insert("properties", array(
// etc...
));
echo $insertId;
Run Code Online (Sandbox Code Playgroud)
接受的答案不再有效。
$database->insert()仅返回true或false。要获得最后一个自动递增的 id,您必须使用$database->id().
此代码取自官方文档:
$database->insert("account", [
"user_name" => "foo",
"email" => "foo@bar.com",
"age" => 25
]);
$account_id = $database->id();
Run Code Online (Sandbox Code Playgroud)