我正在查询数据库中输入的最新行并仅获取id列,所以我确信我会得到一个值。但是,我无法打印变量,除非它在foreach
循环中,即使访问第0个元素也没有给我任何输出。
我使用这行代码查询添加的最新行ID:$id = $db->query("SELECT MAX(id) FROM FM;");
当我使用foreach
循环时,我得到以下输出:
循环:
foreach ($id as $i)
print_r($i);
输出:
Array ( [MAX(id)] => 20 [0] => 20 )
但是,当我使用print $id[0];
或print $id["MAX(id)"];
时,我收到了HTTP错误500.
如何获取单值id并将其放入变量中,id本身就是?
由于
答案 0 :(得分:2)
我查看了从PDOStatement
函数返回的query
引用,找到了返回行数组的fetchAll()
方法,并通过以下方法获得了最新的id代码行:$id->fetchAll()[0][0];
答案 1 :(得分:1)
您必须使用lastInsertId()
方法
$id = $db->lastInsertId();
在调用插入查询后立即