<?php //自 PHP 5.3.0 起默认启用 SQLite3 扩展。可以在编译时使用 --without-sqlite3 禁用 SQLite3 扩展。Windows 用户必须启用 php_sqlite3.dll 才能使用该扩展。自 PHP 5.3.0 起,这个 DLL 被包含在 PHP 的 Windows 分发版中。 //1.连接 class MyDB extends SQLite3{ function __construct() { $this->open('data.db');//要用全路径,防止其他目录找不到 } } $db = new MyDB(); if(!$db){ echo $db->lastErrorMsg(); } else { echo "Opened database successfully\n"; } //2.创建表或插入、更新与删除 $sql =<<<EOF CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL); EOF; $ret = $db->exec($sql); if(!$ret){ echo $db->lastErrorMsg(); } else { echo "Table created successfully\n"; //echo $db->changes(), " Record deleted successfully\n";//最近一次的 SQL 语句更新或插入或删除的数据库行数。 } $db->close(); //插入、更新时与创建表,只是sql语句不同,其它都一样。如下: $sql =<<<EOF INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Allen', 25, 'Texas', 15000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'Teddy', 23, 'Norway', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 ); EOF; $sql =<<<EOF UPDATE COMPANY set SALARY = 25000.00 where ID=1; EOF; $sql =<<<EOF DELETE from COMPANY where ID=2; EOF; //3.查询 $sql =<<<EOF SELECT * from COMPANY; EOF; $ret = $db->query($sql); while($row = $ret->fetchArray(SQLITE3_ASSOC) ){ echo "ID = ". $row['ID'] . "\n"; echo "NAME = ". $row['NAME'] ."\n"; echo "ADDRESS = ". $row['ADDRESS'] ."\n"; echo "SALARY = ".$row['SALARY'] ."\n\n"; } echo "Operation done successfully\n"; $db->close(); //其他函数,SQLite3::escapeString ( string $value )该例程返回一个字符串,在 SQL 语句中,出于安全考虑,该字符串已被正确地转义。