Php pdo结果数组

时间:2015-02-27 19:03:27

标签: php arrays pdo

我有一个数据库选择应该得到一个数字并显示它,但只显示array

$sth = $conn->prepare("SELECT score FROM people WHERE email='gasd3z@yaho.com'");
$sth->execute();
$result = $sth->fetchAll(PDO::FETCH_ASSOC);

echo $result;

如何显示该号码?

3 个答案:

答案 0 :(得分:1)

你没有准备任何东西所以你不需要使用预备语句只需使用这样的查询:

$result = $conn->query("SELECT score FROM people WHERE email='gasd3z@yaho.com'");
foreach($result as $row)
    echo $row['score'];

答案 1 :(得分:0)

之前的回答是错误的,但并不多。 当您执行fetchAll()时,您将获得与数据库中的查询匹配的所有行。

答案是

$sth = $conn->prepare("SELECT score FROM people WHERE email=:email");
$sth->execute([':email' => 'gasd3z@yaho.com']);
$result = $sth->fetch(PDO::FETCH_ASSOC);
$sth->closeCursor();
echo $result['score'];

并且不要忘记prepare()用于准备语句,因此您最好在查询中使用用户数据,就像在我的示例中一样。如果您不想处理查询中的任何值,请改用query()exec()

答案 2 :(得分:-1)

您可以使用print_r($result)var_dump($result)打印数组。回声仅打印出类型。

此外,如果您只需打印特定行,请执行echo $result['score'];