Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php使用pdo连接sqlite3的配置方法详解

php使用pdo连接sqlite3的配置方法详解

墨辰丷
墨辰丷asal
2018-06-02 09:51:082509semak imbas

这篇文章主要介绍了php使用pdo连接sqlite3的配置方法,结合实例形式较为详细的分析了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 = &#39;sqlite:sql.db&#39;;
try
{
//$dbh = new PDO($dsn, $user, $password);  //建立连接
// $dbh = new PDO(&#39;sqlite:yourdatabase.db&#39;);
$dbh = new PDO(&#39;sqlite:itlife365.com&#39;);
echo &#39;Create Db ok&#39; ;
//建表
$dbh->exec("CREATE TABLE itlife365(id integer,name varchar(255))");
echo &#39;Create Table itlife365 ok<BR>&#39;;
$dbh->exec("INSERT INTO itlife365 values(1,&#39;itlife365.com&#39;)");
echo &#39;Insert Data ok<BR>&#39;;
$dbh->beginTransaction();
$sth = $dbh->prepare(&#39;SELECT * FROM itlife365&#39;);
$sth->execute();
//获取结果
$result = $sth->fetchAll();
print_r($result);
$dsn=null;
}
catch (PDOException $e)
{
echo &#39;Connection failed: &#39; . $e->getMessage();
$dsn = null;
}
?>
</html>
<?php $dbh = null;//或使用unset($dbh); ?>

验证:查看数据库:

在文件头显示:

SQLite format 3***

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

PHP实现判断手机设备的方法

PHP strip_tags() 剥去字符串中的 HTML 标签

PHP实现简单的数字分页功能详解

Atas ialah kandungan terperinci php使用pdo连接sqlite3的配置方法详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn