PHP计数行返回错误


PHP count row returns error

我使用以下内容来计算表中的行数:

$book_count = query("SELECT status FROM scifi_book WHERE read = $uid");
(count($book_count));
echo $book_count;

我得到以下错误:

Notice:  Array to string conversion on line 167 

(这是线路echo $book_count;

FIY,query函数已定义并运行良好。从未有任何问题需要插入、选择、更新和删除。

我是不是遗漏了什么?

试试这个:

$book_count = query("SELECT status FROM scifi_book WHERE read = $uid");
echo count($book_count);

此外,您需要使用print_r($book_count),因为您的$book_count不是字符串。

建议:如果您只使用该查询来获取计数,这可能会更好:

$book_count = query("SELECT count(*) FROM scifi_book WHERE read = $uid");

您的查询函数似乎返回了一个数组,而不是字符串。使用print_r($follower_count)来查看查询响应中的内容,而不是echo $follower_count

您看到该错误的原因是因为您是echo,而Arrayquery函数返回的。echo构造仅适用于字符串,请参阅此处的文档:http://www.php.net/manual/en/function.echo.php.

如果您使用print_rvar_dump,那么您就不会看到该错误。因此,@A.S.Roma和Nathaniel Granor建议使用print_r

$book_count = query("SELECT status FROM scifi_book WHERE read =".$uid);
(count($book_count));
echo $book_count;