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使用者状态管理功能的应用
Oct 09 PHP
用PHP实现ODBC数据分页显示一例
Oct 09 PHP
php 保留小数点
Apr 21 PHP
黑夜路人出的几道php笔试题
Aug 04 PHP
表格展示无限级分类(PHP版)
Aug 21 PHP
PHP中::、-&amp;gt;、self、$this几种操作符的区别介绍
Apr 24 PHP
基于php权限分配的实现代码
Apr 28 PHP
discuz免激活同步登入代码修改方法(discuz同步登录)
Dec 24 PHP
ThinkPHP登录功能的实现方法
Aug 20 PHP
PHP图片处理之使用imagecopyresampled函数裁剪图片例子
Nov 19 PHP
php调用自己java程序的方法详解
May 13 PHP
利用PHP自动生成印有用户信息的名片
Aug 01 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
一个ftp类(ini.php)
2006/10/09 PHP
php面向对象全攻略 (九)访问类型
2009/09/30 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
Yii视图CGridView列表用法实例分析
2016/07/12 PHP
PHP 二级子目录(后台目录)设置二级域名
2017/03/02 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
Javascript面向对象编程(二) 构造函数的继承
2011/08/28 Javascript
多浏览器兼容性比较好的复制到剪贴板的js代码
2011/10/09 Javascript
jquery焦点图片切换(数字标注/手动/自动播放/横向滚动)
2013/01/24 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
了不起的node.js读书笔记之node的学习总结
2014/12/22 Javascript
javascript记住用户名和登录密码(两种方式)
2015/08/04 Javascript
js实现不提交表单获取单选按钮值的方法
2015/08/21 Javascript
Vue-cli配置打包文件本地使用的教程图解
2018/08/02 Javascript
基于vue和react的spa进行按需加载的实现方法
2018/09/29 Javascript
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
python二分法实现实例
2013/11/21 Python
python正则表达式re模块详细介绍
2014/05/29 Python
python关闭windows进程的方法
2015/04/18 Python
python Django批量导入数据
2016/03/25 Python
浅谈python函数之作用域(python3.5)
2017/10/27 Python
pycharm 批量修改变量名称的方法
2019/08/01 Python
在keras下实现多个模型的融合方式
2020/05/23 Python
python怎么调用自己的函数
2020/07/01 Python
vscode配置anaconda3的方法步骤
2020/08/08 Python
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
美国宠物护理专家:Revival Animal Health
2020/01/05 全球购物
物理研修随笔感言
2014/02/14 职场文书
优秀乡村医生事迹材料
2014/05/28 职场文书
企业形象策划方案
2014/05/29 职场文书
企业口号大全
2014/06/12 职场文书
2014年后备干部工作总结
2014/12/08 职场文书
收银员岗位职责范本
2015/04/07 职场文书
如何用python识别滑块验证码中的缺口
2021/04/01 Python
图文详解matlab原始处理图像几何变换
2021/07/09 Python