php使用pdo连接sqlite3的配置示例


Posted in PHP onMay 27, 2016

本文实例讲述了php使用pdo连接sqlite3的配置方法。分享给大家供大家参考,具体如下:

刚刚开始使用php+sqlite 的时候,一直以为自己使用的是sqlite3 ,其实不是,php从php5 >=5.3.0 的时候才开始默认支持sqlite3

可参照官方文档http://www.php.net/manual/zh/sqlite3.open.php

默认的方法接口:

public void SQLite3::open ( string $filename [, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string $encryption_key ]] )

利用PHP操作数据库时发现PHP默认只支持到Sqlite2,不支持最新版的Sqlite3。如果想支持Sqlite3就要使用PDO。要想使用PDO,需要在php.ini里面载入php_pdo.dll和php_pdo_sqlite.dll两个模块。如下:

extension=php_pdo.dll
extension=php_pdo_sqlite.dll

如果没有使用pdo ,即使你打开了上面的参数,其实还是使用sqlite2 的,不信你访问看一下生成的数据库在文件的开头是不是提示:

** This file contains an SQLite 2.1 database **

当php环境没有开启上面支持的配置时将报如下错误:

Fatal error: Call to undefined function sqlite_open()

sqlite3示例:

<html>
<?php
//$dsn = 'sqlite:sql.db';
try
{
//$dbh = new PDO($dsn, $user, $password);  //建立连接
// $dbh = new PDO('sqlite:yourdatabase.db');
$dbh = new PDO('sqlite:itlife365.com');
echo 'Create Db ok' ;
//建表
$dbh->exec("CREATE TABLE itlife365(id integer,name varchar(255))");
echo 'Create Table itlife365 ok<BR>';
$dbh->exec("INSERT INTO itlife365 values(1,'itlife365.com')");
echo 'Insert Data ok<BR>';
$dbh->beginTransaction();
$sth = $dbh->prepare('SELECT * FROM itlife365');
$sth->execute();
//获取结果
$result = $sth->fetchAll();
print_r($result);
$dsn=null;
}
catch (PDOException $e)
{
echo 'Connection failed: ' . $e->getMessage();
$dsn = null;
}
?>
</html>
<?php $dbh = null;//或使用unset($dbh); ?>

验证:查看数据库:

在文件头显示:

SQLite format 3***

更多说明可参考官网:http://cn.php.net/manual/zh/ref.pdo-sqlite.php

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
生成缩略图
Oct 09 PHP
PHP 页面跳转到另一个页面的多种方法方法总结
Jul 07 PHP
PHP三元运算符的结合性介绍
Jan 10 PHP
php数组一对一替换实现代码
Aug 31 PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
Aug 25 PHP
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
Oct 22 PHP
PHP创建word文档的方法(平台无关)
Mar 29 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
php 7新特性之类型申明详解
Jun 06 PHP
PHP实现读取文件夹及批量重命名文件操作示例
Apr 15 PHP
php输出文字乱码的解决方法
Oct 04 PHP
PHP+MySql实现一个简单的留言板
Jul 19 PHP
php使用number_format函数截取小数的方法分析
May 27 #PHP
php中关于长度计算容易混淆的问题分析
May 27 #PHP
Centos6.5和Centos7 php环境搭建方法
May 27 #PHP
thinkphp在低版本Nginx 下支持PATHINFO的方法分享
May 27 #PHP
PHP实现数据分页显示的简单实例
May 26 #PHP
用PHP写的一个冒泡排序法的函数简单实例
May 26 #PHP
PHP实现冒泡排序的简单实例
May 26 #PHP
You might like
PHP mb_convert_encoding文字编码的转换函数介绍
2011/11/10 PHP
PHP JS Ip地址及域名格式检测代码
2013/09/27 PHP
php-perl哈希算法实现(times33哈希算法)
2013/12/30 PHP
PHP比你想象的好得多
2014/11/27 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
JS 获取span标签中的值的代码 支持ie与firefox
2009/08/24 Javascript
javascript instanceof 与typeof使用说明
2010/01/11 Javascript
如何使用jQUery获取选中radio对应的值(一句代码)
2013/06/03 Javascript
jQuery设置div一直在页面顶部显示的方法
2013/10/24 Javascript
jQuery实现DIV层淡入淡出拖动特效的方法
2015/02/13 Javascript
BootstrapValidator不触发校验的实现代码
2016/09/28 Javascript
微信小程序之仿微信漂流瓶实例
2016/12/09 Javascript
纯javaScript、jQuery实现个性化图片轮播【推荐】
2017/01/08 Javascript
谈谈JavaScript数组常用方法总结
2017/01/24 Javascript
web前端vue之CSS过渡效果示例
2018/01/10 Javascript
详解Angular路由之路由守卫
2018/05/10 Javascript
React 使用recharts实现散点地图的示例代码
2018/12/07 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
2020/06/11 Javascript
javascript实现扫雷简易版
2020/08/18 Javascript
[01:08]2014DOTA2展望TI 剑指西雅图LGD战队专访
2014/06/30 DOTA
python利用elaphe制作二维条形码实现代码
2012/05/25 Python
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
python开发之thread实现布朗运动的方法
2015/11/11 Python
Python2包含中文报错的解决方法
2018/07/09 Python
Python项目 基于Scapy实现SYN泛洪攻击的方法
2019/07/23 Python
pytorch自定义初始化权重的方法
2019/08/17 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
马来西亚网上美容店:Hermo.my
2017/11/25 全球购物
如何减少垃圾回收让内存更加有效使用
2013/10/18 面试题
《木笛》教学反思
2014/03/01 职场文书
2014年心理健康教育工作总结
2014/12/06 职场文书
祝福语集锦:朋友新店开业祝福语
2019/12/10 职场文书
JavaScript继承的三种方法实例
2021/05/12 Javascript
Mysql排查分析慢sql之explain实战案例
2022/04/19 MySQL
纯CSS打字动画的实现示例
2022/08/05 HTML / CSS