Php/docs/mysqlnduhconnection.changeuser
MysqlndUhConnection::changeUser
(PECL mysqlnd-uh >= 1.0.0-alpha)
MysqlndUhConnection::changeUser — Changes the user of the specified mysqlnd database connection
说明
public MysqlndUhConnection::changeUser
( mysqlnd_connection $connection
, string $user
, string $password
, string $database
, bool $silent
, int $passwd_len
) : bool
Changes the user of the specified mysqlnd database connection
参数
connection
- Mysqlnd connection handle. Do not modify!
user
- The MySQL user name.
password
- The MySQL password.
database
- The MySQL database to change to.
silent
- Controls if mysqlnd is allowed to emit errors or not.
passwd_len
- Length of the MySQL password.
返回值
Returns true
on success.
Otherwise, returns false
范例
Example #1 MysqlndUhConnection::changeUser() example
<?phpclass proxy extends MysqlndUhConnection { /* Hook mysqlnd's connection::change_user call */ public function changeUser($res, $user, $passwd, $db, $silent, $passwd_len) { printf("%s(%s)\n", __METHOD__, var_export(func_get_args(), true)); $ret = parent::changeUser($res, $user, $passwd, $db, $silent, $passwd_len); printf("%s returns %s\n", __METHOD__, var_export($ret, true)); return $ret; }}/* Install proxy/hooks to be used with all future mysqlnd connection */mysqlnd_uh_set_connection_proxy(new proxy());/* Create mysqli connection which is using the mysqlnd library */$mysqli = new mysqli("localhost", "root", "", "test");/* Example of a user API call which triggers the hooked mysqlnd call */var_dump($mysqli->change_user("root", "bar", "test"));?>
以上例程会输出:
proxy::changeUser(array ( 0 => NULL, 1 => 'root', 2 => 'bar', 3 => 'test', 4 => false, 5 => 3, )) proxy::changeUser returns false bool(false)
参见
- mysqlnd_uh_set_connection_proxy() - Installs a proxy for mysqlnd connections
- mysqli_change_user() - Changes the user of the specified database connection