科技知識動態:PHP 操作 MySQL

導讀 跟大家講解下有關PHP 操作 MySQL,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說PHP 操作 MySQL,小編也收集到了有關PH

跟大家講解下有關PHP 操作 MySQL,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說PHP 操作 MySQL,小編也收集到了有關PHP 操作 MySQL的相關資料,希望大家看到了會喜歡。

這篇文章主要介紹了PHP 操作 MySQL,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

相關mysql視頻教程推薦:《mysql教程》

一、使用PHP連接MySQL數據庫

使用PHP函數 mysqli_connect 連接上mysql數據庫 語法:$conn = mysqli_connect('主機名','用戶名','密碼','數據庫名',端口); 連接成功返回資源對象,失敗返回false $conn 稱為【數據庫連接標識】

header("Content-type:text/html;charset=utf-8");$conn = @mysqli_connect('localhost','root','root','student') or die("數據庫連接錯誤!");echo "<pre>";var_dump($conn);echo "</pre>";二、使用PHP訪問MySQL數據庫

使用PHP函數 mysqli_query 向MySQL數據庫發送SQL指令去查詢,將MySQL數據庫返回的結果封裝成對象作為函數的返回值。 語法:$result = mysqli_query(數據庫連接標識,SQL指令); $result 稱為【結果集】

三、結果集的處理

有兩種結果集,主要區別于當前所執行的SQL指令,是否存在數據返回。

有返回數據:select、show、desc mysqli_query 會返回一個資源類型。執行成功返回結果集,失敗返回 false 注意:由于資源類型永遠為真,不能用于判斷是否有數據,只能判斷命令是否執行成功

無返回數據:insert、delete、update、set、DDL(數據定義語言,如create、alter、drop) mysqli_query 會返回一個布爾值。執行成功返回true,失敗返回 false

使用 mysqli_fetch_assoc 從結果集中讀取數據,將讀取到的數據以關聯數組的形式返回,關聯數組的鍵名就是 字段名 ,同時結果集的指針向下移動一行。 語法:$row = mysqli_fetch_assoc(結果集);

header("Content-type:text/html;charset=utf-8");$conn = @mysqli_connect('localhost','root','root','student') or die("數據庫連接錯誤!");$rs = mysqli_query($conn, 'set names utf8');//設置PHP與MySQL交互默認字符集var_dump($rs);$rs = mysqli_query($conn, 'select * from student');while ($row = mysqli_fetch_assoc($rs)) { echo "<pre>"; var_dump($row); echo "</pre>";}

從結果集中得到數據的三個函數:

mysqli_fetch_assoc() 獲取一行數據作為【關聯】數組返回

mysqli_fetch_row() 獲取一行數據作為【索引】數組返回

mysqli_fetch_array() 獲取一行數據作為【關聯】數組和【索引】數組返回

統計結果集中數據的行數 語法:mysqli_num_rows(結果集); 通常用于判斷結果集中是否有數據,如果大于0就證明有數據,等于0就是沒數據。

echo mysqli_num_rows($conn);

釋放結果集,釋放結果集所占的內存空間 語法:mysqli_free_result(結果集);

mysqli_free_result($rs);四、關閉數據庫連接

語法:mysqli_close(數據庫連接標識); 如不使用 mysqli_close 關閉數據庫連接,PHP默認在代碼執行結束后自動關閉。

mysqli_close($conn);五、其他用法

錯誤信息 語法:mysqli_error(數據庫連接標識); 通常用于對錯誤進行調試和查看

echo mysqli_error($conn);

獲取剛插入數據的ID 語法:mysqli_insert_id(數據庫連接標識);

六、項目的字符編碼

MySQL的字符集 MySQL數據最終是保存在數據庫,表,記錄上的。 數據在真實保存時,受到幾個地方的影響:

字段的編碼

表的編碼

庫的編碼

MySQL服務器的內置編碼

如果字段上設置了編碼,保存數據以字段編碼為準。 如果字段沒有設置編碼,以表的編碼為準。 如果表沒有設置編碼,則以庫上設置的編碼為準。 如果庫沒有設置編碼,則以MySQL服務器的內置編碼為準。

以上編碼都是服務器確定的,只需對數據庫、表、字段的編碼進行設置即可。

數據在客戶端展示的編碼 四個地方影響客戶端的展示

數據在服務器端存儲的編碼

下面三個與客戶端相關

客戶端向服務器端發送的數據編碼 服務器變量(配置項):character_set_client

客戶端與服務器端之間的連接層使用的編碼 服務器變量(配置項):character_set_connection

服務器端向客戶端發送的處理結果的數據編碼 服務器變量(配置項):character_set_results

可以使用 show variables like 'char%'; 在MySQL命令行模式下查看相關變量。 可使用 set指令單獨設置,如:set character_set_results=utf8;

set names 是一個快捷操作,同時設置了以上三個服務器變量(配置項),當使用set names utf8;時,相當于

set character_set_client=utf8;set character_set_connection=utf8;set character_set_results=utf8;

項目中確保字符編碼五個地方統一

MySQL數據庫服務器保存數據的編碼

設置php與MySQL交互層編碼 mysqli_query($conn, 'set names utf8');

PHP與瀏覽器之間交互的編碼 header("Content-type:text/html;charset=utf-8");

HTML meta 標簽聲明使用編碼 <meta charset="UTF-8">

PHP文件保存的編碼(在編輯器中設置)

更多mysql相關知識請關注php中文網mysql視頻教程頻道

相關推薦:

PHP操作JSON方法大全

PHP操作MongoDB實現增刪改查功能

【mysql視頻教程】2019年最火的5個mysql視頻教程推薦

以上就是PHP 操作 MySQL的詳細內容,更多請關注php中文網其它相關文章!

來源:php中文網

免責聲明:本文由用戶上傳,如有侵權請聯系刪除!