没有MySQLnd的网络空间的num_rows替代品

时间:2017-09-16 19:15:51

标签: php mysqli mysqlnd

我托管我的网络服务器的公司似乎没有安装MySQLnd(或者至少不在我的服务器上)。这意味着在php中我无法使用$stmt->get_result(),这意味着我无法使用$result->num_rows()。我必须使用$stmt->bind_result()$stmt->fetch()。在我的情况下,是否可以使用fetch()轻松获取行数而无需循环使用?

此外,与$result->num_rows_affected()相同的问题。

1 个答案:

答案 0 :(得分:0)

似乎没有其他选择。我能做的最好的事情是创建一个遍历行并返回计数的方法:

function rowCount($stmt) {
    $count = 0;
    while ($stmt->fetch()){
        $count++;
    }
    $stmt->data_seek(0); //reset the stmt to the first row
    return $count;
}

请注意,这并不能解决rows_affected问题。