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 相关文章推荐
多文件上传的例子
Oct 09 PHP
apache rewrite_module模块使用教程
Jan 10 PHP
PHP中利用substr_replace将指定两位置之间的字符替换为*号
Jan 27 PHP
php中mysql模块部分功能的简单封装
Sep 30 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
Feb 17 PHP
递归删除一个节点以及该节点下的所有节点示例
Mar 19 PHP
PHP register_shutdown_function()函数的使用示例
Jun 23 PHP
使用PHP进行微信公众平台开发的示例
Aug 21 PHP
解决出现SoapFault (looks like we got no XML document)的问题
Jun 24 PHP
PHP实现webshell扫描文件木马的方法
Jul 31 PHP
PHP简单实现欧拉函数Euler功能示例
Nov 06 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
Feb 08 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 文件类型判断代码
2009/03/13 PHP
PHP实现在线阅读PDF文件的方法
2015/06/23 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
thinkPHP中钩子的两种配置调用方法详解
2016/11/11 PHP
PHP使用PDO、mysqli扩展实现与数据库交互操作详解
2019/07/20 PHP
从JavaScript的函数重名看其初始化方式
2007/03/08 Javascript
jquery 弹出层实现代码
2009/10/30 Javascript
jquery ready函数源代码研究
2009/12/06 Javascript
js 中 document.createEvent的用法
2010/08/29 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
Angular.js跨controller实现参数传递的两种方法
2017/02/20 Javascript
angularjs中回车键触发某一事件的方法
2017/04/24 Javascript
BootStrap 获得轮播中的索引和当前活动的焦点对象
2017/05/11 Javascript
使用Three.js实现太阳系八大行星的自转公转示例代码
2019/04/09 Javascript
在Vue中获取自定义属性方法:data-id的实例
2020/09/09 Javascript
微信小程序自定义modal弹窗组件的方法详解
2020/12/20 Javascript
python读取二进制mnist实例详解
2017/05/31 Python
python使用Pycharm创建一个Django项目
2018/03/05 Python
python获取微信小程序手机号并绑定遇到的坑
2018/11/19 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
2019/06/21 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
浅谈python中统计计数的几种方法和Counter详解
2019/11/07 Python
Python 实现一行输入多个数字(用空格隔开)
2020/04/29 Python
浅析HTML5中的download属性使用
2019/03/13 HTML / CSS
Claire’s法国:时尚配饰、美容、珠宝、头发
2021/01/16 全球购物
英国Lookfantastic中文网站:护肤品美妆美发购物(英国直邮)
2020/04/27 全球购物
Laravel的加密解密与哈希实例讲解
2021/03/24 PHP
网络工程师个人的自我评价范文
2013/10/01 职场文书
药品促销活动方案
2014/02/14 职场文书
机电专业大学生职业规划书范文
2014/02/25 职场文书
淘宝客服专员岗位职责
2014/04/11 职场文书
开展批评与自我批评发言材料
2014/05/15 职场文书
2014年前台个人工作总结
2014/11/14 职场文书
浅谈Python中的函数(def)及参数传递操作
2021/05/25 Python
python 中yaml文件用法大全
2021/07/04 Python