1

我有一个 mysqli_result 对象这样做:

    $mysqli->real_query("SELECT * FROM users WHERE `level` > 2");
    $user_list = $mysqli->use_result();
    print_r($user_list); die();

这样做, print_r 给我:

mysqli_result Object ( [current_field] => 0 [field_count] => 6 [lengths] => [num_rows] => 0 [type] => 1 )

后来我只是while ($row = $user_list->fetch_assoc())用来解析所有的内容。想法是在我想num_rows从 mysqli_result 对象中检索之前,但只做 $user_list['num_rows'] 不起作用:

致命错误:不能使用 mysqli_result 类型的对象作为数组

4

4 回答 4

2

$user_list->num_rows行得通吗?

于 2013-03-06T12:50:41.707 回答
1

你必须得到num_rows使用$result->num_rows

if ($result = $mysqli->query("")) {

    /* determine number of rows result set */
    $row_cnt = $result->num_rows;
}

拿到后就num_rows可以拿了。

于 2013-03-06T12:50:17.597 回答
1

试试这个,在我的情况下它有效:)

$query  = "SELECT * FROM users WHERE `level` > 2";
$result = mysqli_query($connection, $query);
while ($rows = mysqli_fetch_array($result, MYSQLI_NUM)) {
     var_dump($rows);
}
于 2014-10-29T09:03:12.153 回答
0
$mysqli->real_query("SELECT * FROM users WHERE `level` > 2");
$user_list = $mysqli->use_result();
echo $user_list->num_rows;
于 2013-03-06T13:13:41.700 回答