使用PDO获取单行,单列

Chr*_*ris 26 php mysql database pdo

我有一个mysql查询,它针对单行中的单个列

"SELECT some_col_name FROM table_name WHERE user=:user"
Run Code Online (Sandbox Code Playgroud)

在执行语句之后,$stmt->execute();如何将这个单个单元格直接放入没有循环的变量中?换句话说,如何获得

from $stmt->execute();

to $col_value = 100;
Run Code Online (Sandbox Code Playgroud)

我尝试了下面的2,但都没有工作..列是原始表中的数字4,但我假设因为在我的select语句中我只选择它,当我为fetchColumn指定参数时应该为1.

$col_value = $stmt->fetchColumn();
$col_value = $stmt->fetchColumn(0);
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我试图尽可能少地使用它.

rek*_*o_t 33

你确定它会返回任何行吗?
$stmt->fetchColumn()
是获取单个值的正确方法,因此您可能没有绑定:user参数,或者它只是没有返回任何行.


JAL*_*JAL 11

$sql='SELECT some_col_name FROM table_name WHERE user=?';

$sth=$pdo_dbh->prepare($sql);
$data=array($user);

$sth->execute($data);

$result=$sth->fetchColumn();
Run Code Online (Sandbox Code Playgroud)