mysqli_change_user()函數(shù)用于改變指定數(shù)據(jù)庫連接的用戶,并設(shè)置當(dāng)前數(shù)據(jù)庫。
mysqli_change_user()函數(shù)接受一個連接對象,用戶名,密碼和,數(shù)據(jù)庫名稱作為參數(shù),將給定連接對象中的用戶和數(shù)據(jù)庫更改為指定的用戶和數(shù)據(jù)庫。
mysqli_change_user($con, $user, $password, $database);
| 序號 | 參數(shù)及說明 |
|---|---|
| 1 | con(必需) 這是一個表示與MySQL Server的連接的對象。 |
| 2 | user(可選) 這是您需要更改的MySQL用戶的名稱。 |
| 3 | password(可選) 這是指定的MySQL用戶的密碼 |
| 3 | database(可選) 這表示需要更改的數(shù)據(jù)庫的名稱。 如果將NULL作為值傳遞給此參數(shù),則此函數(shù)只更改用戶,而不選擇數(shù)據(jù)庫。 |
mysqli_change_user()函數(shù)返回一個布爾值,如果數(shù)據(jù)庫更改成功,則為true;否則為false。
此函數(shù)最初是在PHP版本5中引入的,并且可以在所有更高版本中使用。
以下示例演示了mysqli_change_user()函數(shù)的用法(面向過程風(fēng)格)-
<?php
//建立連接
$con = mysqli_connect("localhost", "root", "password", "mydb");
$res = mysqli_change_user($con, "nhooo", "abc123", "mydb");
if($res){
print("用戶更改成功");
}else{
print("對不起,無法更改用戶");
}
//關(guān)閉連接
mysqli_close($con);
?>輸出結(jié)果
用戶更改成功
在面向?qū)ο蟮娘L(fēng)格中,此函數(shù)的語法為$con-> change_user();。以下是面向?qū)ο箫L(fēng)格中此函數(shù)的示例;
<?php
$host = "localhost";
$username = "root";
$passwd = "password";
$dbname = "mydb";
//建立連接
$con = new mysqli($host, $username, $passwd, $dbname);
$res = $con->change_user("nhooo", "abc123", "mydb");
if($res){
print("用戶更改成功");
}else{
print("對不起,無法更改用戶");
}
//關(guān)閉連接
$res = $con -> close();
?>輸出結(jié)果
用戶更改成功
您可以在更改后,驗證數(shù)據(jù)庫名稱,如下所示:
//建立連接
$con = mysqli_connect("localhost", "root", "password", "mydb");
//更改數(shù)據(jù)庫
$res = mysqli_change_user($con, "nhooo", "abc123", "mydb");
$list = mysqli_query($con, "SELECT DATABASE()");
if($list) {
$row = mysqli_fetch_row($list);
print("當(dāng)前數(shù)據(jù)庫: ". $row[0]);
}
//關(guān)閉連接
mysqli_close($con);
?>輸出結(jié)果
當(dāng)前數(shù)據(jù)庫: mydb
<?php
$connection = mysqli_connect("localhost","root","password","mydb");
if (mysqli_connect_errno($connection)){
echo "連接MySQL失敗: " . mysqli_connect_error();
}
mysqli_change_user($connection, "myuser", "abc123", "sampledb");
mysqli_close($connection);
?>