php封裝db 類連線sqlite3

2021-09-14 04:40:20 字數 3401 閱讀 1788

<?php

class dbmanager

$this->db = new sqlite3('./db.php');

}function init()

function changes()

function query($sql,$param=null,$memb=null)else

}$rs=$stmt->execute();

if(!$rs)

$arr=$rs->fetcharray(sqlite3_num);

$rs->finalize();

$stmt->close();

if(!$arr)

return null;

if(!$memb)

return $arr;

$res=array();

for($i=0;$idb->prepare($sql);

if(!$stmt)

return false;

if($param)else

}$rs=$stmt->execute();

if(!$rs)

$res=array();

while($arr=$rs->fetcharray(sqlite3_num))

if(count($memb)==1 && $memb[0]==null)

$it=array();

for($i=0;$ifinalize();

$stmt->close();

return $res;

}function querysingle($sql,$param=null)

function querysingleall($sql,$param=null)else

}$rs=$stmt->execute();

if(!$rs)

$res=array();

while($arr=$rs->fetcharray(sqlite3_num))

$rs->finalize();

$stmt->close();

return $res;

}function exec($sql,$param=null)else

}$rs=$stmt->execute();

if($rs) else

$stmt->close();

return $res;

}function begin()

function rollback()

function commit()

function escapestring($s)

//最新插入的id

function lastinsertrowid()

function lasterrormsg ()

}?>

pdo支援資料庫移植,如果你的部署將來有多種資料庫,那就用它了.同時,pdo是c設計的,執行效率較高.他已經封裝為php的擴充套件庫元件了.執行快,效率高

class dbmanager

private function bind_param($stmt,&$param) else }}

function exec($sql, $param = null)

$this->bind_param($stmt,$param);

$res = $stmt -> execute();

if($res)

$stmt -> closecursor();

return $res;

}function query($sql,$param=null,$name=true)

$this->bind_param($stmt,$param);

$res = $stmt -> execute();

if(!$res)

$arr=$stmt->fetch($name?pdo::fetch_assoc:pdo::fetch_num);

$stmt -> closecursor();

return $arr;

}function queryall($sql,$param=null,$name=true)

$this->bind_param($stmt,$param);

$res = $stmt -> execute();

if(!$res)

$arr=$stmt->fetchall($name?pdo::fetch_assoc:pdo::fetch_num);

$stmt -> closecursor();

return $arr;

}function querysingle($sql,$param=null,$name=true)

$this->bind_param($stmt,$param);

$res = $stmt -> execute();

if(!$res)

$arr=$stmt->fetchcolumn();

$stmt -> closecursor();

return $arr;

}function querysingleall($sql,$param=null,$name=true)

$this->bind_param($stmt,$param);

$res = $stmt -> execute();

if(!$res)

$arr=;

dowhile($item!==false);

$stmt -> closecursor();

return $arr;

}public function begin()

public function rollback()

public function commit() }/*

$db=new dbmanager("db.json");

$db->exec('create table user(id integer primary key not null)');

$db->exec('insert into user(id) values(?)',1);

var_dump($db->query('select * from user where id=?',1));

var_dump($db->queryall('select * from user where id=?',1));

var_dump($db->querysingle('select * from user where id=?',1));

var_dump($db->querysingleall('select * from user where id=?',1));

*/?>

這是修改為pdo版本的原生db類

匯入的json配置檔案

我這裡只是方便前端修改,也可以搞成php檔案

封裝自己的DB類(PHP)

封裝乙個db類,用來專門運算元據庫,以後凡是對資料庫的操作,都由db類的物件來實現。這樣有了自己的db類,寫專案時簡單的sql語句就不用每次寫了,直接呼叫就行,很方便!1.封裝乙個db類。乙個類檔案應該只有乙個類,其他的內容全部都沒有。類檔案的命名規則 類名.class.php 下面是建立db類的 ...

封裝自己的DB類(PHP)

封裝乙個db類,用來專門運算元據庫,以後凡是對資料庫的操作,都由db類的物件來實現。這樣有了自己的db類,寫專案時簡單的sql語句就不用每次寫了,直接呼叫就行,很方便!1.封裝乙個db類。乙個類檔案應該只有乙個類,其他的內容全部都沒有。類檔案的命名規則 類名.class.php 下面是建立db類的 ...

php封裝db類連線sqlite3資料庫的方法例項

前言 sqlite3swcfz副檔名在php 5.3.0 以上都會預設啟用。可以在編譯時使用 without sqlite3來禁用它。windows使用者可通過啟用php sqlite3.dll才能使用此擴充套件。php sqlite3.dll預設包含在php 5.3.0之後的php發行版中。有關詳...