PHP实现的简单操作SQLite数据库类与用法示例


Posted in PHP onJune 19, 2017

本文实例讲述了PHP实现的简单操作SQLite数据库类与用法。分享给大家供大家参考,具体如下:

SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

这里为大家提供一个简洁的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程序设计有所帮助。

PHP 相关文章推荐
php array_unique之后json_encode需要注意
Jan 02 PHP
php中判断字符串是否全是中文或含有中文的实现代码
Sep 16 PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 PHP
PHP中执行MYSQL事务解决数据写入不完整等情况
Jan 07 PHP
destoon二次开发常用数据库操作
Jun 21 PHP
php中return的用法实例分析
Feb 28 PHP
关于PHP文件的自动运行方法分析
May 13 PHP
浅谈php中fopen不能创建中文文件名文件的问题
Feb 06 PHP
PHP获取当前日期及本周一是几月几号的方法
Mar 28 PHP
PHP封装的page分页类定义与用法完整示例
Dec 24 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
Nov 19 PHP
WordPress伪静态规则设置代码实例
Dec 10 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
Jun 19 #PHP
PHP利用Socket获取网站的SSL证书与公钥
Jun 18 #PHP
php实现批量上传数据到数据库(.csv格式)的案例
Jun 18 #PHP
PHP更安全的密码加密机制Bcrypt详解
Jun 18 #PHP
Laravel中log无法写入问题的解决
Jun 17 #PHP
php下载远程大文件(获取远程文件大小)的实例
Jun 17 #PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
Jun 17 #PHP
You might like
《PHP编程最快明白》第六讲:Mysql数据库操作
2010/11/01 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
php生成rss类用法实例
2015/04/14 PHP
大家在抢红包,程序员在研究红包算法
2015/08/31 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
如何在PHP中读写文件
2020/09/07 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
jquery.validate使用攻略 第二部
2010/07/01 Javascript
写出高效jquery代码的19条指南
2014/03/19 Javascript
在JavaScript中处理数组之reverse()方法的使用
2015/06/09 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
JavaScript代码性能优化总结(推荐)
2016/05/16 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
vue图片加载与显示默认图片实例代码
2017/03/16 Javascript
深入理解requireJS-实现一个简单的模块加载器
2018/01/15 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
[02:51]DOTA2英雄基础教程 艾欧
2014/01/13 DOTA
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
[52:27]2018DOTA2亚洲邀请赛 3.31 小组赛B组 paiN vs Secret
2018/04/01 DOTA
[02:08]2018年度CS GO枪械皮肤设计大赛优秀作者-完美盛典
2018/12/16 DOTA
Python列表append和+的区别浅析
2015/02/02 Python
python中字典dict常用操作方法实例总结
2015/04/04 Python
windows 10下安装搭建django1.10.3和Apache2.4的方法
2017/04/05 Python
Python使用re模块实现信息筛选的方法
2018/04/29 Python
Python3内置模块之base64编解码方法详解
2019/07/13 Python
Python如何输出警告信息
2020/07/30 Python
Pygame框架实现飞机大战
2020/08/07 Python
Python创建自己的加密货币的示例
2021/03/01 Python
中医专业职业生涯规划书范文
2014/01/04 职场文书
火车的故事教学反思
2014/02/11 职场文书
协议书与合同的区别
2014/04/18 职场文书
会议欢迎词
2015/01/23 职场文书
详解如何使用Node.js实现热重载页面
2021/05/06 Javascript
OpenCV-Python实现图像平滑处理操作
2021/06/08 Python
关于CSS浮动与取消浮动的问题
2021/06/28 HTML / CSS