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é)果
用戶更改成功
您可以在更改后,驗(yàn)證數(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); ?>