SQLite is a lightweight database, a relational database management system that complies with ACID. Its design goal is to be embedded, and it has been used in many embedded products. It takes up very low resources. In embedded devices, only a few hundred K of memory may be enough. It can support mainstream operating systems such as Windows/Linux/Unix, and can be combined with many programming languages, such as Tcl, PHP, Java, etc., as well as ODBC interfaces. It is also compared to MySQL and PostgreSQL, two world-famous open source software. In terms of database management systems, its processing speed is faster than them all.
Here is a simple SQLite class for PHP operation:
<?php /*** //应用举例 require_once('cls_sqlite.php'); //创建实例 $DB=new SQLite('blog.db'); //这个数据库文件名字任意 //创建数据库表。 $DB->query("create table test(id integer primary key,title varchar(50))"); //接下来添加数据 $DB->query("insert into test(title) values('泡菜')"); $DB->query("insert into test(title) values('蓝雨')"); $DB->query("insert into test(title) values('Ajan')"); $DB->query("insert into test(title) values('傲雪蓝天')"); //读取数据 print_r($DB->getlist('select * from test order by id desc')); //更新数据 $DB->query('update test set title = "三大" where id = 9'); ***/ class SQLite { function __construct($file) { try { $this->connection=new PDO('sqlite:'.$file); } catch(PDOException $e) { try { $this->connection=new PDO('sqlite2:'.$file); } catch(PDOException $e) { exit('error!'); } } } function __destruct() { $this->connection=null; } function query($sql) //直接运行SQL,可用于更新、删除数据 { return $this->connection->query($sql); } function getlist($sql) //取得记录列表 { $recordlist=array(); foreach($this->query($sql) as $rstmp) { $recordlist[]=$rstmp; } return $recordlist; } function Execute($sql) { return $this->query($sql)->fetch(); } function RecordArray($sql) { return $this->query($sql)->fetchAll(); } function RecordCount($sql) { return count($this->RecordArray($sql)); } function RecordLastID() { return $this->connection->lastInsertId(); } } ?>
Related PHP configuration instructions:
1. Test PHP first Can you connect to sqlite database:
Create a php file
<?php $conn = sqlite_open('test.db'); ?>
Test whether this file can run normally.
If the sqlite module cannot be loaded normally, an error like this may occur:
Fatal error: Call to undefined function sqlite_open() in C:\Apache\Apache2\htdocs\ test.php on line 2
The solution is as follows:
2. Open the php.ini file and delete the semicolons in front of the following three lines:
;extension=php_sqlite.dll ;extension=php_pdo.dll ;extension=php_pdo_sqlite.dll
Restart web server
The above is the detailed content of Using PHP to implement SQLite database classes and usage. For more information, please follow other related articles on the PHP Chinese website!