PHP MySQL结果 - 不必要使用foreach

Nic*_*ick 0 php mysql foreach resultset

我使用这种方法来访问我的MySQL数据库:

$STH = $DBH->prepare("SELECT email FROM user WHERE unum = :u");
$STH->bindParam(':u', $json['u']); // Example only
try {
    $STH->execute();
    $STH->setFetchMode(PDO::FETCH_ASSOC);
} catch(PDOException $e) {
    echo $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)

现在,我知道$ STH只包含一行,但我总是这样做:

foreach($STH as $row){
    ... $row['email']... etc
Run Code Online (Sandbox Code Playgroud)

foreach是完全没必要的,使代码更难以遵循.如何email$STH不使用的情况下访问foreach

谢谢.

Mih*_*rga 5

您可以使用

$row = $STH->fetch();
echo $row['email'];
Run Code Online (Sandbox Code Playgroud)

它只会得到1排.