MySQLi擴充套件的使用

2021-09-23 14:29:53 字數 2521 閱讀 4326

1.連線資料庫

mysqli擴充套件為php與資料庫的連線提供了mysqli_connect()函式

mysqli mysqli_connect (

string $host = ini_get(『mysqli.default_host』),       // 主機名或ip

string $username = ini_get(『mysqli.default_user』),    // 使用者名稱

string $passwd = ini_get(『mysqli.default_pw』),      // 密碼

string $dbname = 『』,                 // 資料庫名

int $port = ini_get(『mysqli.default_port』),         // 埠號

string $socket = ini_get(『mysqli.default_socket』)     // socket通訊

)

> 函式共有6個可選引數,省略時將自動使用php.ini中配置的預設值

> 連線成功時,該函式返回乙個表示資料庫連線的物件

> 連線失敗時,函式返回false,並提示warning級錯誤資訊

> 引數$socket表示mysql.sock檔案路徑(用於linux環境),通常不需要手動設定

2.執行sql語句

在mysqli擴充套件中,通常使用mysqli_query()函式傳送sql語句,獲取執行結果。

mixed mysqli_query (

mysqli $link,                   // 資料庫連線

string $query,                   // sql語句

int $resultmode = mysqli_store_result     // 結果集模式(可選)

)

> $link表示通過mysqli_connect()函式獲取的資料庫連線

> $query表示sql語句

執行select、show、describe或explain查詢時,返回值是查詢結果集,而執行其他查詢,執行成功返回true,否則返回false。

此外,可選引數$resultmode表示結果集模式,其值可以是以下兩種常量。

> mysqli_store_result模式:會將結果集全部讀取到php端

> mysqli_use_result模式:僅初始化結果集檢索,在處理結果集時進行資料讀取。

3.處理結果集

函式mysqli_query()在執行select、show、explain或describe的sql語句後,返回的是乙個資源型別的結果集。因此,需使用函式從結果集中獲取資訊。

函式名描述

mysqli_num_rows()

獲取結果中行的數量

mysqli_fetch_all()

獲取所有的結果,並以陣列方式返回

mysqli_fetch_array()

獲取一行結果,並以陣列方式返回

mysqli_fetch_assoc()

獲取一行結果並以關聯陣列返回

mysqli_fetch_row()

獲取一行結果並以索引陣列返回

> 函式mysqli_fetch_all()和mysqli_fetch_array()的返回值,都支援關聯陣列和索引陣列兩種形式

> 第1個引數表示結果集

> 第2個引數是可選引數,用於設定返回的陣列形式,其值是乙個常量

函式mysqli_fetch_all()和mysqli_fetch_array()的返回常量。

> mysqli_assoc:表示返回的結果是乙個關聯陣列

> mysqli_num:表示返回的結果是乙個索引陣列

> mysqli_both:表示返回的結果中包含關聯和索引陣列,該常量為預設值

4.其他操作函式

mysqli擴充套件不僅為php連線資料庫、執行sql語句提供了函式,還為方便開發提供很多其他常用的操作函式。

例如,獲取插入操作時產生的id號、sql語句中特殊字元的轉義等。

函式名描述

mysqli_insert_id()

獲取上一次插入操作時產生的id號

mysqli_affected_rows()

獲取上一次操作時受影響的行數

mysqli_real_escape_string()

用於轉義sql語句字串中的特殊字元

mysqli_error()

返回最近函式呼叫的錯誤**

mysqli_free_result()

釋放結果集

mysqli_close()

關閉資料庫連線

> mysqli_free_result()函式用於釋放結果集占用的系統記憶體資源

> mysqli_close()函式用於釋放開啟的資料庫連線

MySQL i 擴充套件

在上一章的內容中有寫出php的幾種擴充套件,本章會開啟mysql i 擴充套件的篇章。注意 mysql i 擴充套件只支援mysql資料庫 1.如何連線資料庫 連線資料庫 conn new mysqli localhost root root text 2 3306 檢視連線是否正確 if link...

PHP的MySQLi擴充套件

什麼是php的mysqli擴充套件?php的mysqli擴充套件又稱為mysql增強擴充套件,mysqli擴充套件在php5及以後版本中包含。mysqli擴充套件相對於mysql擴充套件的優勢 基於面向過程和物件導向的使用 支援預處理語句 支援事務 mysqli擴充套件安裝 配置php配置檔案,開啟...

MySQLi擴充套件庫

方法一 如果返回true代表開啟成功,false代表開啟失敗 var dump extension loaded mysqli 方法二 檢視所有已開啟的擴充套件 返回值為乙個陣列 extension get loaded extensions 會顯示出所有的擴充套件 print r extensio...