(PECL mysqlnd-uh >= 1.0.0-alpha)
mysqlnd_uh_convert_to_mysqlnd — Convierte un gestor de conexión de MySQL a uno de mysqlnd
Convierte un gestor de conexión de MySQL a uno de mysqlnd. Después de la conversión, se pueden ejecutar las llamadas a la biblioteca mysqlnd sobre el gestor de conexión. Esto se puede utilizar para acceder a la funcionalidad de mysqlnd que no está disponible a través de las llamadas de la API del espacio de usuario.
Esta función se puede deshabilitar con
mysqlnd_uh.enable
.
Si mysqlnd_uh.enable
se establece a false
la función no instalará el proxy y
siempre devolverá true
. Además, se emitirá un
error de tipo E_WARNING
. Este mensaje de error podría leerse
como PHP Warning: mysqlnd_uh_convert_to_mysqlnd(): (Mysqlnd User Handler)
The plugin has been disabled by setting the configuration parameter mysqlnd_uh.enable = false.
You are not allowed to call this function [...]
.
MySQL connection handle
Un gestor de conexión de MySQL del tipo mysql, mysqli o PDO_MySQL.
Un gestor de conexión de mysqlnd.
Versión | Descripción |
---|---|
5.4.0 |
El parámetro mysql_connection ahora puede ser de tipo
mysql , PDO_MySQL , o mysqli .
Antes, solo estaba permitido el tipo mysqli .
|
Ejemplo #1 Ejemplo de mysqlnd_uh_convert_to_mysqlnd()
<?php
/* La API de usuario de PDO no proporciona acceso al id del hilo de conexión */
$mysql_connection = new PDO("mysql:host=localhost;dbname=test", "root", "");
/* Convertir el gestor de MySQL de PDO a uno de mysqlnd */
$mysqlnd = mysqlnd_uh_convert_to_mysqlnd($mysql_connection);
/* Crear un Proxy para llamar a los métodos de la clase de conexión de mysqlnd */
$obj = new MySQLndUHConnection();
/* Llamar a mysqlnd_conn::get_thread_id */
var_dump($obj->getThreadId($mysqlnd));
/* Usar SQL para obtener el id del hilo de conexión */
var_dump($mysql_connection->query("SELECT CONNECTION_ID()")->fetchAll());
?>
El resultado del ejemplo sería:
int(27054) array(1) { [0]=> array(2) { ["CONNECTION_ID()"]=> string(5) "27054" [0]=> string(5) "27054" } }