我用PHP创建了一个Sqlite3数据库:
$db = new SQLite3('mysqlitedb.db');
$db->exec('CREATE TABLE foo (bar STRING)');
$db->exec("INSERT INTO foo (bar) VALUES ('This is a test')");
$db->exec("INSERT INTO foo (bar) VALUES ('This is another test')");
Run Code Online (Sandbox Code Playgroud)
但是当我尝试获取所有行时:
$result = $db->query('SELECT * FROM foo');
var_dump($result->fetchArray());
Run Code Online (Sandbox Code Playgroud)
它只返回db中的第一行:
array(2) { [0]=> string(14) "This is a test" ["bar"]=> string(14) "This is a test" }
Run Code Online (Sandbox Code Playgroud)
我不确定为什么它不会返回所有行.
您需要迭代行.你只会获得当前行.
while($row=$result->fetchArray()){
// Do Something with $row
print_r($row);
}
Run Code Online (Sandbox Code Playgroud)
PHP手册在页面上有一个很好的例子