Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php PDO只得到一个值_Php_Sql_Pdo - Fatal编程技术网

Php PDO只得到一个值

Php PDO只得到一个值,php,sql,pdo,Php,Sql,Pdo,我正在查询数据库中输入的最新行,并且只获取id列,因此我确信我将获得一个值。但是,我无法打印变量,除非它位于foreach循环中,甚至访问第0个元素都不会给我任何输出 我使用这行代码查询最新添加的行id:$id=$db->query(“从FM中选择MAX(id)) 当我使用foreach循环时,我得到以下输出: 循环: 输出: Array ( [MAX(id)] => 20 [0] => 20 ) 但是,当我使用print$id[0]时或打印$id[“最大(id)”]我得到HTTP

我正在查询数据库中输入的最新行,并且只获取id列,因此我确信我将获得一个值。但是,我无法打印变量,除非它位于
foreach
循环中,甚至访问第0个元素都不会给我任何输出

我使用这行代码查询最新添加的行id:
$id=$db->query(“从FM中选择MAX(id))

当我使用
foreach
循环时,我得到以下输出:

循环:

输出:

Array ( [MAX(id)] => 20 [0] => 20 )
但是,当我使用
print$id[0]时或<代码>打印$id[“最大(id)”]我得到HTTP错误500

我如何获取单个值id并将其放入变量中,即id本身

谢谢

而不是选择max(id),您必须使用
lastInsertId()
方法

$id = $db->lastInsertId(); 
在调用insert query而不是选择max(id)之后,必须使用
lastInsertId()
方法

$id = $db->lastInsertId(); 

调用insert query后,我立即查找了从
query
函数返回的
PDOStatement
引用,找到了
fetchAll()
方法,该方法返回一个行数组,并通过以下代码行获得了最新的id:
$id->fetchAll()[0][0]

我在
query
函数返回的
PDOStatement
引用中查找,找到了
fetchAll()
方法,该方法返回一个行数组,并通过以下代码行获得了最新的id:
$id->fetchAll()[0][0]

使用此
打印($id[0])
而不是
打印$id[0]
echo$id[0]
打印($id[0])也不起作用。请使用此
打印($id[0])
而不是
打印$id[0]
echo$id[0]
打印($id[0])也不起作用。+1到-aizen-。是的,这是一个选择。这在这里很好,我认为也是一个错误,因为您试图将对象的项打印为数组的索引。我的意思是你应该做
打印($id[0]->id);或者至少打印($id[0])+1至-aizen-。是的,这是一个选择。这在这里很好,我认为也是一个错误,因为您试图将对象的项打印为数组的索引。我的意思是你应该做
打印($id[0]->id);或者至少打印($id[0])
没有注意到您在
$db
上调用了
lastInsertId()
,它成功了。感谢您没有注意到您在
$db
上调用了
lastInsertId()
,它成功了。谢谢