PHP基于PDO实现的SQLite操作类【包含增删改查及事务等操作】

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP基于PDO实现的SQLite操作类。分享给大家供大家参考,具体如下:

直接代码:

注意:一定要写好数据库保存路径

<?php
// sqlite分页类
class SqliteDB{
  public function __construct(){
    // 初始化数据库,并且连接数据库 数据库配置
    $this->db = new PDO('sqlite:'.dirname(__FILE__).'\log.db');
    $this->table_name=$tab;
    $this->tab_init();
  }
  public function tab_init()
  {
    # 表初始化,创建表
    $this->db->exec("CREATE TABLE log(
      id integer PRIMARY KEY autoincrement,
      urls varchar(200),
      ip varchar(200),
      datetimes datetime default (datetime('now', 'localtime'))
      )");
  }
  public function insert($tab_name,$key_list,$value_list)
  {
    // echo "INSERT INTO ".$tab_name." (".$key_list.") values(".$value_list.")";
    $result=$this->db->exec("INSERT INTO ".$tab_name." (".$key_list.") values(".$value_list.")");
    if (!$result) {
      return false;
    }
    // echo "{{{INSERT INTO ".$tab_name." (".$key_list.") values(".$value_list.")}}}}";
    $res=$this->db->beginTransaction();//事务回gun
  }
  public function total($tab_name,$tj='')//求总记录数目
  {
    $sth = $this->db->prepare('SELECT count(id) as c FROM '.$tab_name.' '.$tj);
    $sth->execute();
    $result = $sth->fetchAll();
    return $result[0]['c'];
  }
  public function update()
  {
    # 修改
  }
  function delete($value='')
  {
    # 删除
  }
  public function query($tab_name,$tj='')//表名称和条件
  {
    $sth = $this->db->prepare('SELECT * FROM '.$tab_name.' '.$tj);
    // echo 'SELECT * FROM '.$tab_name.' '.$tj;
    $sth->execute();
    $result = $sth->fetchAll();
    return $result;
  }
}
// $db=new SqliteDB();
// $res=$db->insert('log','ip,urls,datetimes','"127.0.0.1","www.baidu.com","2012-12-12 00:00:00"');//添加案例
// $res=$db->query('log');//查询案例
// $res=$db->total('log');//查询案例
// print_r($res);
// foreach ($res as $key => $row) {
// echo $row['urls'];
// }
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+Oracle数据库程序设计技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

相关文章

深入分析php中接口与抽象类的区别

接口和抽象类真的很难区分开,引文他们很相似,方法都没有定义逻辑,都是供子类是想或继承的。区分二者只要记住一句话:接口是规范,类是实现。接口的目的是定义一个规范,大家都遵守这个规范。也就是...

使用PHP curl模拟浏览器抓取网站信息

官方解释curl是一个利用URL语法在命令行方式下工作的文件传输工具。curl是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HT...

PHP数组去重的更快实现方式分析

本文实例讲述了PHP数组去重的更快实现方式。分享给大家供大家参考,具体如下: 概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的...

php中通过虚代理实现延迟加载的实现代码

这货是从 Martin 大神的《企业应用架构模式》中学到的,辅助 PHP 动态语言的特性,可以比 Java 轻松很多的实现延迟加载(LazyLoad)。基本原理是通过一个虚代理(Virt...

PHP与以太坊交互详解

自去年以来,我们正在开发区块链(Blockchain)业务。最近使用过Ethereum并使用PHP,所以我想我们应该聊聊这个话题。 这里有个前提: 1.理解区块链 2.对编程语言有了解...