(PECL mysqlnd-uh >= 1.0.0-alpha)
MysqlndUhConnection::changeUser — Changes the user of the specified mysqlnd database connection
$connection
, string $user
, string $password
, string $database
, bool $silent
, int $passwd_len
) : boolChanges the user of the specified mysqlnd database connection
connectionMysqlnd connection handle. Do not modify!
userThe MySQL user name.
passwordThe MySQL password.
databaseThe MySQL database to change to.
silentControls if mysqlnd is allowed to emit errors or not.
passwd_lenLength of the MySQL password.
Returns TRUE on success.
Otherwise, returns FALSE
Example #1 MysqlndUhConnection::changeUser() example
<?php
class 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"));
?>
The above example will output:
proxy::changeUser(array ( 0 => NULL, 1 => 'root', 2 => 'bar', 3 => 'test', 4 => false, 5 => 3, )) proxy::changeUser returns false bool(false)