使用PDO,是否有一种更简单的方法来获得给定id的单个表变量?


Using PDO, is there a simpler way to get a single table var given an id?

似乎酷孩子们现在正在使用PDO。我下面的代码真的是最精简的从id返回单个变量吗?

假设2列:'id'和'txt' -我只想为指定的id获得1个'txt' var:

$db = new PDO('mysql:host;dbname;charset=utf8', 'user', 'pass');
$st = $db -> prepare( "SELECT txt FROM wah WHERE id = :id" );
$st -> bindParam(':id', $id);
$st -> execute();
$result = $st -> fetch();
$txt = $result["txt"]; //finally!
对于最简单的情况,

似乎有很多代码,不是吗?

好吧,如果连接计数,您至少需要一个额外的行。但是你可以以后保存。

$db = new PDO('mysql:host;dbname;charset=utf8', 'user', 'pass');
$db->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$st = $db -> prepare( "SELECT txt FROM wah WHERE id = ?" );
$st -> execute([$id]);
$txt = $st -> fetchColumn();

但真正的PDO功率是fetchAll()
我为酷孩子们写了一个教程,值得一看,http://phpdelusions.net/pdo