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 相关文章推荐
xml+php动态载入与分页
Oct 09 PHP
php设计模式 Singleton(单例模式)
Jun 26 PHP
深入解析PHP垃圾回收机制对内存泄露的处理
Jun 14 PHP
php设计模式之单例、多例设计模式的应用分析
Jun 30 PHP
php读取mysql中文数据出现乱码的解决方法
Aug 16 PHP
php实现的CSS更新类实例
Sep 22 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
Laravel与CI框架中截取字符串函数
May 08 PHP
php 函数使用可变数量的参数方法
May 02 PHP
Laravel+Intervention实现上传图片功能示例
Jul 09 PHP
PHP学习记录之常用的魔术常量详解
Dec 12 PHP
如何用PHP实现多线程编程
May 26 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 inc文件使用的风险和注意事项
2013/11/12 PHP
php 使用array函数实现分页
2015/02/13 PHP
php die()与exit()的区别实例详解
2016/12/03 PHP
nullJavascript中创建对象的五种方法实例
2013/05/07 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
jQuery选择id属性带有点符号元素的方法
2015/03/17 Javascript
jquery动态遍历Json对象的属性和值的方法
2016/07/27 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
用JavaScript实现让浏览器停止载入页面的方法
2017/01/19 Javascript
js编写选项卡效果
2017/05/23 Javascript
JavaScript输入框字数实时统计更新
2017/06/17 Javascript
Vue 多层组件嵌套二种实现方式(测试实例)
2017/09/08 Javascript
JavaScript求一组数的最小公倍数和最大公约数常用算法详解【面向对象,回归迭代和循环】
2018/05/07 Javascript
vue使用Proxy实现双向绑定的方法示例
2019/03/20 Javascript
详解vue配置后台接口方式
2019/03/29 Javascript
vue获取data数据改变前后的值方法
2019/11/07 Javascript
nestjs返回给前端数据格式的封装实现
2021/02/22 Javascript
[02:27]2018DOTA2亚洲邀请赛趣味视频之钓鱼大赛 谁是垂钓冠军?
2018/04/05 DOTA
用python实现的去除win下文本文件头部BOM的代码
2013/02/10 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
使用python实现滑动验证码功能
2019/08/05 Python
python调用支付宝支付接口流程
2019/08/15 Python
selenium+python配置chrome浏览器的选项的实现
2020/03/18 Python
django实现将修改好的新模型写入数据库
2020/03/31 Python
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
澳大利亚最受欢迎的超级商场每日优惠:Catch
2020/11/17 全球购物
护理专业学生的求职信范文
2013/12/11 职场文书
事业单位公务员的职业生涯规划
2014/01/15 职场文书
祖国在我心中演讲稿
2014/01/15 职场文书
论文评语大全
2014/04/29 职场文书
党代会心得体会
2014/09/04 职场文书
小学教师年度个人总结
2015/02/05 职场文书
2015年秋季小学开学典礼主持词
2015/07/16 职场文书
2016关于学习党章的心得体会
2016/01/15 职场文书
教学反思怎么写
2016/02/24 职场文书
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android