關於PHP中sqlite3的使用

2021-03-02 php中文網最新課程

SQLite是一種輕量級的關係型資料庫,可以內嵌在我們的應用程式中一起發布出去,這樣我們在部署應用的時候,就不需要額外資料庫的支持了。

在php中如果要使用sqlite,只需開啟php_sqlite3.dll擴展即可,非常方便。下面是我曾經的一個項目中,自己編寫的一個操作SQLite資料庫的工具類。

<?php


class SQLiteDB extends SQLite3 {
function __construct(){
try {
$this->open(dirname(__FILE__).'/../data/sqlite_ecloud.db');
}catch (Exception $e){
die($e->getMessage());
}
}
}


class DBUtils {
private static $db;
private static function instance(){
if (!self::$db) {
self::$db = new SQLiteDB();
}
}


/**
* 創建表
* @param string $sql
*/
public static function create($sql){
self::instance();
$result = @self::$db->query($sql);
if ($result) {
return true;
}
return false;
}


/**
* 執行增刪改操作
* @param string $sql
*/
public static function execute($sql){
self::instance();
$result = @self::$db->exec($sql);
if ($result) {
return true;
}
return false;
}


/**
* 獲取記錄條數
* @param string $sql
* @return int
*/
public static function count($sql){
self::instance();
$result = @self::$db->querySingle($sql);
return $result ? $result : 0;
}


/**
* 查詢單個欄位
* @param string $sql
* @return void|string
*/
public static function querySingle($sql){
self::instance();
$result = @self::$db->querySingle($sql);
return $result ? $result : '';
}


/**
* 查詢單條記錄
* @param string $sql
* @return array
*/
public static function queryRow($sql){
self::instance();
$result = @self::$db->querySingle($sql,true);
return $result;
}


/**
* 查詢多條記錄
* @param string $sql
* @return array
*/
public static function queryList($sql){
self::instance();
$result = array();
$ret = @self::$db->query($sql);
if (!$ret) {
return $result;
}
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
array_push($result, $row);
}
return $result;
}
}


?>

調用方式:

引入DBUtils.php文件,然後通過 DBUtils::方法名 這種形式,即可操作SQLite資料庫了。

-END-

▼請點擊下方:「閱讀原文」,在線查看全部文章內容!

相關焦點

  • 月考+通過Python使用Sqlite3的7個技巧
    使用sqlite3的過程中我學到了很多知識和技巧,我願意與大家一起來分享一下。execute方法,sqlite3提供了一種批量操作的辦法:executemany。使用Pragmas.必要時再使用它有一些pragmas指令讓你能夠改變你的程序中sqlite3的行為。
  • 嵌入式 | sqlite3的使用
    簡介sqlite3是一個開源的、內嵌式的、輕量級的關係型資料庫,廣泛應用於嵌入式物聯網領域。
  • C++ sqlite3使用指南
    具體介紹:int sqlite3_open(  const char *filename,   /* Database filename (UTF-8) */  sqlite3 **ppDb          /* OUT: SQLite db handle */);打開一個資料庫,第一個參數為資料庫的路徑,注意這裡不能為:memory:,這表示存在內存中,
  • php 中關於時區的那點事
    時區信息資料庫採用按「區域/位置」命名規範,方便應用於計算機世界,其中英文地名中的空格用下劃線「_」代替,連詞符「-」只在英文地名本身包含時使用.中所支持的中國時區,參考 亞洲所支持的時區列表關於時區的編程實現時區不僅僅是現實生活的問題,計算機編程世界也有時間,自然也離不開時區的概念.
  • 關於PHP中for循環語句的幾種變型
    首頁 > 語言 > 關鍵詞 > php最新資訊 > 正文 關於PHP中for循環語句的幾種變型
  • php中Session使用方法詳解
    Session以數組的形式使用,如:$_SESSION['session名']註冊一個會話變量和讀取Session  在PHP中使用Session變量,除了要啟動之外,還要經過註冊的過程。註冊和讀取Session變量,都要通過訪問$_SESSION數組完成。在$_SESSION關聯數組中的鍵名具有和PHP中普通變量相同的命名規則。
  • php中的算術運算符和遞增遞減運算符怎麼使用?
    算術運算符是php中常用的運算符,常見的數據操作符,處理加、減、乘、除、取餘等運算,如下圖所示。在程序開發時使用求模運算符通常有兩個目的,第一個目的是做整除運算,另一個目的的,讓輸入的數不超過某個範圍。遞增遞減運算符怎麼用?在編程中經常遇到對變量進行加1或者減1,遞增遞減運算符是一元運算符,但是這兩個並不是唯一的選擇,<?
  • 怎麼理解php中的變量?php變量命名注意什麼?
    怎麼理解php中的變量?程序中的變量源於數學,在程序語言中能夠儲存結果或者表示抽象概念。簡單理解變量是臨時存儲值的容器,它可以儲存數字、文本、和一些複雜的數據(比如說字符串、複雜的排列組合等),變量在php語言中居於核心地位,是使用php的關鍵所在,變量的值在程序運行中會隨時發生變化,能夠把程序中準備使用的一段數據起一個簡短容易記得名字,另外它還可以保存用戶輸入數據和特點運算的結果,總結變量是變量是用於跟蹤幾乎所有類型信息的簡單工具。
  • 使用PHP Mktime實現倒計時功能
    源 / php中文網      源 / www.php.cn如果你的網頁關注的是未來的某一特定事件,比如春節、國慶或者你的婚禮,你可能想要一個倒計時計時器,讓用戶知道離事件發生還有多久。在PHP中我們可以使用時間戳和mktime函數來實現。mktime()函數用於人為地生成選定日期和時間的Unix 時間戳。它的工作原理與time()函數相同,不同之處是它用於指定的日期,而不一定是今天的日期。如何編寫倒計時計時器?
  • 如何使用PHP生成隨機字符串
    源 / php中文網      源 / www.php.cn使用PHP生成隨機,唯一,字母數字字符串。它可以實現如下:-將所有可能的字母存儲到字符串中。-生成從0到字符串長度-1的隨機索引。-列印該索引處的字母。-執行此步驟n次(其中n是所需字符串的長度)。程序代碼如下:<?
  • 使用PHP創建和修改PDF文檔
    首頁 > 語言 > 關鍵詞 > php最新資訊 > 正文 使用PHP創建和修改PDF文檔
  • php常量有哪些特點怎麼使用?php預定義常量有哪些?
    php常量有哪些特點?常量是一個簡單的標識符,可以簡單理解為「不變的量」在程序運行時不會被修改(其實這個概念是不準確的)。在程序運行過程中常量一旦被定義不能修改或者取消定義,它的作用域是全局的,常量可以再腳本任何地方訪問它。
  • PHP開發中關於文件操作的疑難問答
    前言:PHP中對各類資料庫的操作有著支持,對文件的操作也同樣有著很豐富的操作方法,很多朋友現在的操作還是基於文件操作可是有的時候在操作文件的時候還存在不少的困惑和疑點,以下是我在日常編寫過程中碰到的以及壇上朋友所碰到的關於文件操作的一些問題收藏吧。
  • php學習之php的預定義常量的使用
    ]);2訪問常量說明:直接使用常量名就可以了.。如:echo NAME;常量的使用:網站的配置文件中使用。如:當前網站路徑3.魔術常量—預定義常量__LINE__:文件中的當前行號__FILE__:文件的完整路徑和文件名,如果用在被包含的文件中,則返回被辦好的文件名,自php4.0.2起,__FILE__總是包含一個絕對路徑.如果是符號連接,則是解析後的絕對路徑,而在此前的版本有時會包含一個相對路徑__DIR__:文件所在目錄。
  • 關於PHP程式設計師解決問題的能力
    有些情況下php.ini配置中關閉了錯誤顯示,需要修改php.ini打開錯誤信息,或者錯誤信息被導出到了日誌文件,這種情況可以直接tailf php_error.log來看錯誤信息。  拿到錯誤信息後直接定位到程序代碼問題,或者到Google/百度搜索,即可解決問題。
  • 將PHP作為Shell腳本語言使用
    要使用PHP作為Shell腳本語言,你必須將PHP作為二進位的CGI編譯,而不是Apache模式;編譯成為二進位CGI模式運行的PHP有一些安全性的問題,關於解決的方法可以參見PHP手冊(https://www.php.net)。
  • php學習之php的預定義變量的使用
    說明:就是php系統內置的提供給使用的變量,這個變量一般都是超全局變量,超全局就是沒有作用域的限制有的還可以跨頁面$GLOBALS_SERVER_GET_POST_FILES_COOKIE_SESSION_REQUEST_ENV1.
  • PHP+MySQL應用中使用XOR運算加密算法
    為了達到以上目的,使用XOR算法時可以選擇用戶名作為明文,而密鑰是用戶自定義的密碼,然後將加密後的用戶名存儲在資料庫中。另外,在用戶登錄的時候,有以下兩種方式來驗證合法用戶。(1)根據其提交的用戶名(明文)和密碼(密鑰)信息重新加密,並使用加密後的信息與資料庫中存儲的密碼信息進行比較,如果相等,則用戶合法,否則,為非法用戶。
  • PHP 使用 CURL 詳解
    上述代碼片段中使用了三個重要的選項:CURLOPT_URL 指定請求的URL;CURLOPT_RETURNTRANSFER 設置為1表示稍後執行的curl_exec函數的返回是URL的返回字符串,而不是把返回字符串定向到標準輸出並返回TRUE;CURLLOPT_HEADER設置為0表示不返回HTTP頭部信息。
  • PHP獲取HTTP POST中不同格式的數據
    源 / php中文網      源 / www.php.cnHTTP協議中的POST 方法有多中格式的數據協議,在HTTP的head中用不同的Content-type標識.常用的有application/x-www-form-urlencoded,這是最常見的,就是from表單的格式.在HTTP的head中是Content-Type: application