我知道在MySQL内部,您可以使用:
SELECT COUNT(*) FROM table
我在PHP中编写了以下代码以显示页面上的行数:
$sql = 'select * from users';
$data = $conn -> query($sql);
echo $data;
但是当我运行它时,我收到以下错误:
捕获致命错误:第44行的[目录]中无法将类PDOStatement的对象转换为字符串。
我认为问题是返回的值不是字符串形式。如果这是正确的,我怎么能显示页面上的行数?
答案 0 :(得分:4)
如果要计算行数,可以使用PDO执行此操作:
$sql = 'select * from users';
$data = $conn->query($sql);
$rows = $data->fetchAll();
$num_rows = count($rows);
答案 1 :(得分:0)
嗯,你不是很糟糕,你几乎就在那里:
$sql = 'SELECT COUNT(*) as numrow FROM users';
$data = $conn -> query($sql);
rows = $data->fetchAll();
根据返回数据的类型,您可以使用
$rows->numrow
如果返回数据是对象
答案 2 :(得分:0)
有一些简单快捷的方法可以做到这一点
$ sql =“SELECT COUNT(id)AS total_row FROM table_name”;
$ stmt = $ conn-> query($ sql);
$ stmt->执行();
echo $ count ['total_row'];
$ sql =“SELECT * FROM table_name”;
$ stmt = $ conn-> query($ sql);
$ stmt->执行();
$ count = $ stmt-> rowCount();
echo $ count;