Php 如何从mysqli查询中获取结果数?

Php 如何从mysqli查询中获取结果数?,php,mysql,mysqli,Php,Mysql,Mysqli,所以我在做这个查询: 'SELECT * FROM Album WHERE id = ?;' 使用preparesql语句,我想知道如何获得这个查询返回的结果数?B/c由于每个相册id都是唯一的,所以此查询应该只返回1个相册,我希望确保它这样做 代码 您可以使用$result->num_rows获得它: if ($row = $result->fetch_assoc()) { $info['id'] = $row['id']; $info['title'] = $row[

所以我在做这个查询:

'SELECT * FROM Album WHERE id = ?;'
使用preparesql语句,我想知道如何获得这个查询返回的结果数?B/c由于每个相册id都是唯一的,所以此查询应该只返回1个相册,我希望确保它这样做

代码
您可以使用
$result->num_rows
获得它:

if ($row = $result->fetch_assoc()) {
    $info['id'] = $row['id'];
    $info['title'] = $row['title'];
    $info['date_created'] = $row['date_created'];
    $info['creator'] = $row['creator'];

    /* determine number of rows result set */
    $row_cnt = $result->num_rows;
    
    printf("Result set has %d rows.\n", $row_cnt);
}
您可以在上找到更多详细信息。

只需使用COUNT(*) 参考:

另一种方式 我想确保它能做到这一点

在代码中,您已经在这样做了。以下情况

if($row = $result->fetch_assoc()){

执行您想要的操作。

如果ID是唯一的,则只有一条记录。时期无需“确保”@juergend如果您总是检查是否发生了不可能发生的事情,那么彻底检查就好了,比如90%的代码都会包含这样的检查。@juergend这不一定是真的:它可以是0条记录well@PaulSpiegel这用于调试
rowCount()
是一个PDO函数。
SELECT COUNT(*) FROM Album WHERE id = ?;
$query = $dbh->prepare("SELECT * FROM Album WHERE id = ?");
$query->execute();
$count =$query->rowCount();
echo $count;
if($row = $result->fetch_assoc()){