本文目錄一覽:
- 1、mysqli面向對象和面向過程有什麼區別
- 2、請問PHP怎樣用面向對象方式連接MySQL資料庫?
- 3、PHP中為什麼mysqli需要實例化,而mysql不需要?
- 4、PHP使用mysqli擴展連接MySQL資料庫
mysqli面向對象和面向過程有什麼區別
可以這麼講。因為很多PHP程序員不習慣面向對象編程,所以mysqli類庫提供了這個方法供他們使用。這也是方便一些使用mysql擴展的用戶快速遷移到mysqli。實際上,mysqli_query()內部是對面向對象調用過程的封裝。
我個人覺得還是面向對象的寫法比較簡潔,而mysqli_query()需要多傳遞一個參數。
請問PHP怎樣用面向對象方式連接MySQL資料庫?
?php
$servername = “localhost”; //你的連接地址,可以是ip
$username = “username”; //你的用戶名
$password = “password”; //你的密碼
$dbname = “myDB”; //你要連接資料庫的名字
// 創建連接
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢測連接
if ($conn-connect_error) {
die(“連接失敗: ” . $conn-connect_error);
}
echo “連接成功”;
學習可以參考:
PHP中為什麼mysqli需要實例化,而mysql不需要?
mysqli也不一定需要實例化,之所以你要實例化是因為你是要以面向對象的方式來開發這個程序,但是你要是用面向過程的方式來寫也是可以的,百度裡面有例子你可以看一下
一、面向對象
?php
$mysqli =new mysqli(“localhost”, “my_user”, “my_password”, “world”); //實例化對象
/* check connection */
if (mysqli_connect_errno()) {
printf(“Connect failed: %s\n”, mysqli_connect_error());
exit();
}
printf(“Host information: %s\n”, $mysqli-host_info);
/* close connection */
$mysqli-close();
?
二、面向過程
?php
$link = mysqli_connect(“localhost”, “my_user”, “my_password”, “world”);
/* check connection */
if (!$link) {
printf(“Connect failed: %s\n”, mysqli_connect_error());
exit();
}
printf(“Host information: %s\n”, mysqli_get_host_info($link));
/* close connection */
mysqli_close($link);
?
PHP使用mysqli擴展連接MySQL資料庫
1.面向對象的使用方式
$db
=
new
mysqli(‘localhost’,
‘root’,
‘123456’,
‘dbname’);
如果建立連接時未指定資料庫則選擇使用的資料庫,切換使用的資料庫
$db-select_db(‘dbname’);
$query
=
“SELECT
*
FROM
user
WHERE
uid=4″;
$result
=
$db-query($query);
$result_num
=
$result-num_rows;
$row
=
$result-fetch_assoc();
//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值
$row
=
$result-fetch_row();
//返回一個列舉數組,可以通過$row[0]的方式取得值
$row
=
$result-fetch_array();
//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值
$row
=
$result-fetch_object();
//返回一個對象,可以通過$row-uid的方式取得值
$result-free();
//釋放結果集
$db-close();
//關閉一個資料庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接
當進行INSERT、UPDATE、DELETE操作時,使用$db-affected_rows查看影響行數
2.面向過程的使用方式
$db
=
mysqli_connect(‘localhost’,
‘root’,
‘123456’,
‘dbname’);
如果建立連接時未指定資料庫則選擇使用的資料庫,切換使用的資料庫
mysqli_select_db($db,
‘dbname’);
查詢資料庫
$query
=
“SELECT
*
FROM
user
WHERE
uid=4″;
$result
=
mysqli_query($db,
$query);
$result_num
=
mysqli_num_rows($result);
返回一行結果
$row
=
mysqli_fetch_assoc($result);
//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值
$row
=
mysqli_fetch_row($result);
//返回一個列舉數組,可以通過$row[0]的方式取得值
$row
=
mysqli_fetch_array($result);
//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值
$row
=
mysqli_fetch_object($result);
//返回一個對象,可以通過$row-uid的方式取得值
斷開資料庫連接
mysqli_free_result($result);
//釋放結果集
mysqli_close($db);
//關閉一個資料庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接
當進行INSERT、UPDATE、DELETE操作時,使用mysqli_affected_rows()查看影響行數
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/180168.html