>  기사  >  백엔드 개발  >  PHP 운영 SQLite 클래스에 대한 코드 공유

PHP 운영 SQLite 클래스에 대한 코드 공유

WBOY
WBOY원래의
2016-07-25 08:57:22983검색
本文介绍下,php编程中一个操作sqlite数据的类,这里分享下代码,有需要的朋友参考下。

提供一个PHP操作SQLite类:

<?php
/*
* 操作sqlite的类
* edit by bbs.it-home.org
//应用举例

require_once('cls_sqlite.php');

//创建实例
$DB=new SQLite('blog.db'); //这个数据库" title="数据库" >数据库文件名字任意

//创建数据库" title="数据库" >数据库表。
$DB->query("create table test(id integer primary key,title varchar(50))");

//接下来添加数据
$DB->query("insert into test(title) values('小屋')");
$DB->query("insert into test(title) values('蓝雨')");
$DB->query("insert into test(title) values('Ajan')");
$DB->query("insert into test(title) values('sjolzy')");

//读取数据
print_r($DB->getlist('select * from test order by id desc'));

//更新数据
$DB->query('update test set title = "三大" where id = 9');
***/

class SQLite
{
   function __construct($file){
       try{
           $this->connection=new PDO('sqlite:'.$file);
       }catch(PDOException $e){
        try{
            $this->connection=new PDO('sqlite2:'.$file);
            }catch(PDOException $e){
               exit('error!');
            }
        }
    }
    function __destruct(){
        $this->connection=null;
    }
  function query($sql){ //直接运行SQL,可用于更新、删除数据
        return $this->connection->query($sql);
    }

 function getlist($sql){ //取得记录列表
        $recordlist=array();
        foreach($this->query($sql) as $rstmp){
            $recordlist[]=$rstmp;
        }
        return $recordlist;
    }

   function Execute($sql){
        return $this->query($sql)->fetch();
    }

   function RecordArray($sql){
        return $this->query($sql)->fetchAll();
    }

 function RecordCount($sql){
        return count($this->RecordArray($sql));
    }

    function RecordLastID(){
        return $this->connection->lastInsertId();
    }
}
?>

附,相关 PHP 配置说明:

1,先测试 PHP 能否连接 sqlite 数据库" title="数据库" >数据库: 建立一个php文件

<?php
$conn  =  sqlite_open('test.db');
?>

测试文件能否正常运行。

如果未能正常加载sqlite模块,可能出现如下错误: Fatal error: Call to undefined function sqlite_open() in C:ApacheApache2htdocstest.php on line 2

解决办法: 打开 php.ini 文件,去掉以下三行前的分号,即去掉注释,使该配置节生效:

;extension=php_sqlite.dll ;extension=php_pdo.dll ;extension=php_pdo_sqlite.dll

重启apache或nginx使配置生效。



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.