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
PHP4实际应用经验篇(5)
Oct 09 PHP
加速XP搜索功能堪比vista
Mar 22 PHP
MySQL数据源表结构图示
Jun 05 PHP
深入array multisort排序原理的详解
Jun 18 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
Jun 28 PHP
PHP JS Ip地址及域名格式检测代码
Sep 27 PHP
自己写了一个php检测文件编码的函数
Apr 21 PHP
php创建无限级树型菜单
Nov 05 PHP
PHP实现bitmap位图排序与求交集的方法
Jul 28 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 PHP
PHP从零开始打造自己的MVC框架之入口文件实现方法详解
Jun 03 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
漫威DC即将合作联动,而双方早已经秘密开始
2020/04/09 欧美动漫
怎样才能成为PHP高手?学会“懒惰”的编程
2006/12/05 PHP
Cakephp 执行主要流程
2010/03/24 PHP
PHP5中使用DOM控制XML实现代码
2010/05/07 PHP
PHP 计算代码执行耗时的代码修正网上普遍错误
2011/05/14 PHP
php实现等比例不失真缩放上传图片的方法
2016/11/14 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
2011/11/15 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
JavaScript常用基础知识强化学习
2015/12/09 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
静态页面html中跳转传值的JS处理技巧
2016/06/22 Javascript
解析Vue2.0双向绑定实现原理
2017/02/23 Javascript
AngularJS封装$http.post()实例详解
2017/05/06 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
2018/01/03 Javascript
纯js代码生成可搜索选择下拉列表的实例
2018/01/11 Javascript
JavaScript直接调用函数与call调用的区别实例分析
2020/05/22 Javascript
vue keep-alive的简单总结
2021/01/25 Vue.js
[54:57]DOTA2-DPC中国联赛定级赛 Aster vs DLG BO3第二场 1月8日
2021/03/11 DOTA
python自动化测试之连接几组测试包实例
2014/09/28 Python
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
Python编程实现的简单神经网络算法示例
2018/01/26 Python
Python3实现的判断环形链表算法示例
2019/03/07 Python
python调用百度API实现人脸识别
2020/11/17 Python
python基于openpyxl生成excel文件
2020/12/23 Python
HTML5 MiranaVideo播放器 (代码开源)
2010/06/11 HTML / CSS
全球地下的服装和态度:Slam Jam
2018/02/04 全球购物
视光学专业毕业生推荐信
2013/10/28 职场文书
教师推荐信范文
2013/11/24 职场文书
优秀村官事迹材料
2014/01/10 职场文书
幼儿园三八妇女节活动方案
2014/03/11 职场文书
企业精细化管理实施方案
2014/03/23 职场文书
大学教师师德师风演讲稿
2014/08/22 职场文书
2014离婚协议书范文两篇
2014/09/15 职场文书
小学教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
Vue的过滤器你真了解吗
2022/02/24 Vue.js