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 相关文章推荐
PHP常用函数小技巧
Sep 11 PHP
php smarty截取中文字符乱码问题?gb2312/utf-8
Nov 07 PHP
解析php防止form重复提交的方法
Jul 01 PHP
PHP中的output_buffering详细介绍
Sep 27 PHP
php防止网站被刷新的方法汇总
Dec 01 PHP
深入浅析php中sprintf与printf函数的用法及区别
Jan 08 PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
Jan 28 PHP
PHP云打印类完整示例
Oct 15 PHP
PHP内存缓存功能memcached示例
Oct 19 PHP
Laravel实现表单提交
May 07 PHP
PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法
Sep 13 PHP
Laravel框架用户登陆身份验证实现方法详解
Sep 14 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仿QQ验证码的实例分析
2013/07/01 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
php让json_encode不自动转义斜杠“/”的方法
2020/04/27 PHP
PHP生成图表pChart的示例解析
2020/07/31 PHP
变量声明时命名与变量作为对象属性时命名的区别解析
2013/12/06 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
jqueryMobile 动态添加元素,展示刷新视图的实现方法
2016/05/28 Javascript
node.js cookie-parser之parser.js
2016/06/06 Javascript
javascript正则表达式中分组详解
2016/07/17 Javascript
Vue.js每天必学之构造器与生命周期
2016/09/05 Javascript
react-native 封装选择弹出框示例(试用ios&amp;android)
2017/07/11 Javascript
bootstrap table实现双击可编辑、添加、删除行功能
2017/09/27 Javascript
微信小程序实现城市列表选择
2018/06/05 Javascript
如何进行微信公众号开发的本地调试的方法
2019/06/16 Javascript
[02:42]2014DOTA2国际邀请赛 三冰专访:我会打到Ti20
2014/07/13 DOTA
Python3 模块、包调用&amp;路径详解
2017/10/25 Python
Python单元测试unittest的具体使用示例
2018/12/17 Python
python requests 库请求带有文件参数的接口实例
2019/01/03 Python
Python如何将图像音视频等资源文件隐藏在代码中(小技巧)
2020/02/16 Python
python:批量统计xml中各类目标的数量案例
2020/03/10 Python
解决python虚拟环境切换无效的问题
2020/04/30 Python
Python虚拟环境库virtualenvwrapper安装及使用
2020/06/17 Python
python 爬虫请求模块requests详解
2020/12/04 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
2021/01/28 Python
实例讲解CSS3中的border-radius属性
2015/08/18 HTML / CSS
英国卫浴商店:Ergonomic Design
2019/09/22 全球购物
公积金转移接收函
2014/01/11 职场文书
建筑工地宣传标语
2014/06/18 职场文书
考试作弊检讨书怎么写?
2014/12/21 职场文书
学前教育见习总结
2015/06/23 职场文书
名人传读书笔记
2015/06/26 职场文书
中秋节作文(五年级)之关于月亮
2019/09/11 职场文书
Python实现byte转integer
2021/06/03 Python
Redis 哨兵集群的实现
2021/06/18 Redis
详解Go语言运用广度优先搜索走迷宫
2021/06/23 Python