我有简单的代码,可以通过PDO将用户插入SQLite3数据库,看起来像
$db = new PDO('sqlite:myDB.db');
try {
$sql = "CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT,
address TEXT,
city TEXT)";
$db->exec($sql);
$data = array( 'name' => 'Baba Ganush', 'addr' => '123 Test Dr', 'city' => 'Test City' );
$insert = $db->prepare("INSERT INTO users (name, address, city) value (:name, :addr, :city)");
$insert->execute((array)$data);
}
catch(PDOException $e) {
echo $e->getMessage();
}
$db = null;
但是当mod_fcgid: stderr: PHP Fatal error: Call to a member function execute() on a non-object in
是数组时,它会引发$insert->execute((array)$data);
行$data
的错误。
我错过了什么?