(PECL mysqlnd_ms >= 1.1.0)
mysqlnd_ms_get_last_used_connection — Devuelve un array que describe la última conexión usada
Devuelve un array que describe la última conexión usada desde la agrupación de conexiones del complemento apuntada por el gestro de conexión del usuario. Si se usa el complemento, un gestor de conexión de usuario representa una agrupación de conexiones a bases de datos. No es posible indicar, desde las propiedades del gestor de conexión de usuario, a qué servidor de bases de datos de la agrupación apunta el gestor de conexión de usuario.
La función se puede usar para depurar o monitorizar PECL mysqlnd_ms.
FALSE
en caso de error. De otro modo, un
array que describe la conexión usada para
ejecutar la última sentencia.
El array que describe la conexión.
Propiedad | Descripción | Versión |
---|---|---|
scheme | El esquema de la conexión. Puede ser tcp://host:port o unix://host:socket. Si se han de distinguir las conexiones unas de otras se ha de usar una combinación de scheme y thread_id como clave única. Ni scheme ni thread_id por sí solos son suficientes para distinguir dos conexiones entre sí. Dos servidores puede asignar el mismo thread_id a dos conexiones diferentes. Por lo tanto, las conexiones de la agrupación podrían tener el mismo thread_id. También, no se debe depender de la unicidad de scheme de una agrupación. Los ingenieros de controlo de calidad podrían usar la misma instancia del servidor MySQL para dos roles lógicos distintos y añadirla múltiples veces a la agrupación. Esta técnica se usa, por ejemplo, en la batería de pruebas. | Desde 1.1.0. |
host | El equipo anfitrión servidor de las bases de datos usado para la conexión. Este equipo solamente se establece con conexiones TCP/IP. Está vacío con conexiones de dominio Unix o tuberías con nombre de Windows. | Desde 1.1.0. |
host_info | Una cadena de caracteres que representa el nombre del equipo anfitrión servidor y el tipo de conexión. | Desde 1.1.2. |
port | El puerto del servidor de las bases de datos usado con la conexión. | Desde 1.1.0. |
socket_or_pipe | El socket de dominio Unix o la tubería con nombre de Windows usados con la conexión. Este valor está vacío para conexiones TCP/IP. | Desde 1.1.2. |
thread_id | El id del subproceso de conexión. | Desde 1.1.0. |
last_message | Un mensaje de información obtenido desde la función mysql_info() de la API en C de MySQL. Véase mysqli_info() para una descripción. | Desde 1.1.0. |
errno | El código del error. | Desde 1.1.0. |
error | El mensaje de error. | Desde 1.1.0. |
sqlstate | El códgio SQLstate del error. | Desde 1.1.0. |
Nota:
mysqlnd_ms_get_last_used_connection() requiere PHP >= 5.4.0 y PECL mysqlnd_ms >= 1.2.0. Internamente, se utiliza una funcionalidad en C de la biblioteca mysqlnd no disponble en PHP 5.3.
Este ejemplo asume que myapp se refiere a una sección del fichero de configuración del complemento y que representa una agrupación de conexiones.
Ejemplo #1 Ejemplo de mysqlnd_ms_get_last_used_connection()
<?php
$enlace = new mysqli("myapp", "usuario", "contraseña", "base_datos");
$resultado = $enlace->query("SELECT 1 FROM DUAL");
var_dump(mysqlnd_ms_get_last_used_connection($enlace));
?>
El resultado del ejemplo sería:
array(10) { ["scheme"]=> string(22) "unix:///tmp/mysql.sock" ["host_info"]=> string(25) "Localhost via UNIX socket" ["host"]=> string(0) "" ["port"]=> int(3306) ["socket_or_pipe"]=> string(15) "/tmp/mysql.sock" ["thread_id"]=> int(46253) ["last_message"]=> string(0) "" ["errno"]=> int(0) ["error"]=> string(0) "" ["sqlstate"]=> string(5) "00000" }