时间:2021-07-01 10:21:17 帮助过:16人阅读
这里为大家提供一个简洁的PHP操作SQLite类:
- <?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();
- }
- }
- ?>
相关 PHP 配置说明:
1. 先测试 PHP 能否连接 sqlite 数据库:
建立一个php文件
- <?php
- $conn = sqlite_open('test.db');
- ?>
测试这个文件能否正常运行。
如果没有能正常加载sqlite模块,就可能出现这样的错误:
Fatal error: Call to undefined function sqlite_open() in C:\Apache\Apache2\htdocs\test.php on line 2
解决办法如下:
2. 打开 php.ini 文件,将以下三行前面的分号删除:
- ;extension=php_sqlite.dll
- ;extension=php_pdo.dll
- ;extension=php_pdo_sqlite.dll
重新启动web服务器
以上就是利用PHP实现SQLite数据库类与用法的详细内容,更多请关注Gxl网其它相关文章!