略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: MysqlndUhConnection::changeUser

2024-12-21

MysqlndUhConnection::changeUser

(PECL mysqlnd-uh >= 1.0.0-alpha)

MysqlndUhConnection::changeUserChanges 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

<?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($rettrue));
   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)

参见

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.

官方地址:https://www.php.net/manual/en/mysqlnduhconnection.changeuser.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3