sqlite_num_rows

SQLiteResult::numRows

(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)

sqlite_num_rows -- SQLiteResult::numRowsReturns the number of rows in a buffered result set

说明

int sqlite_num_rows ( resource $result )

面向对象风格 (method):

int SQLiteResult::numRows ( void )

Returns the number of rows in the buffered result set.

参数

result

The SQLite result resource. This parameter is not required when using the object-oriented method.

Note:

此函数不能用于未缓冲的结果句柄。

返回值

Returns the number of rows, as an integer.

范例

Example #1 Procedural example

<?php
$db 
sqlite_open('mysqlitedb');
$result sqlite_query($db"SELECT * FROM mytable WHERE name='John Doe'");
$rows sqlite_num_rows($result);

echo 
"Number of rows: $rows";
?>

Example #2 Object-oriented example

<?php
$db 
= new SQLiteDatabase('mysqlitedb');
$result $db->query("SELECT * FROM mytable WHERE name='John Doe'");
$rows $result->numRows();

echo 
"Number of rows: $rows";
?>

参见

  • sqlite_changes() - Returns the number of rows that were changed by the most recent SQL statement
  • sqlite_query() - Executes a query against a given database and returns a result handle
  • sqlite_num_fields() - Returns the number of fields in a result set

User Contributed Notes

be {a} t {dawt} pl 19-Oct-2015 05:43
@rezaamya

$db = new SQLite3('databasename.db');
$result = $db->query("SELECT * FROM users");
$rows = count ($result);
echo "Number of rows: $rows";

$rows value should always be 1
... even if the query is invalid
I tested that on
SQLite Library 3.7.7.1
rezaamya at gmail dot com 18-Jun-2014 12:11
neither of "sqlite_num_rows($result)" and "$result->numRows()" is not working on SQLite3 !
you should use this way:

$db = new SQLite3('databasename.db');
$result = $db->query("SELECT * FROM users");
$rows = count ($result);
echo "Number of rows: $rows";