MysqlndUhConnection::close

(PECL mysqlnd-uh >= 1.0.0-alpha)

MysqlndUhConnection::closeCierra una conexión a una base de datos abierta previamente

Descripción

public MysqlndUhConnection::close ( mysqlnd_connection $connection , int $close_type ) : bool

Cierra una conexión a una base de datos abierta previamente.

Nota:

El no llamar a la implmentación made podría ocasionar pérdidas de memoria o que PHP falle. Esto no se considera un error. Por favor, recuerde que las funciones de la biblioteca mysqlnd no han sido diseñadas para ser expuestas al espacio de usuario.

Parámetros

connection

La conexión a cerrar. ¡No modificar!

close_type

Por qué la conexión se va a cerrar. El valor de close_type es una de la consntantes MYSQLND_UH_MYSQLND_CLOSE_EXPLICIT, MYSQLND_UH_MYSQLND_CLOSE_IMPLICIT, MYSQLND_UH_MYSQLND_CLOSE_DISCONNECTED o MYSQLND_UH_MYSQLND_CLOSE_LAST. Esta última no debería usarse, a menos que el comportamiento predeterminado de la biblioteca mysqlnd haya sido cambiado por un complemento.

Valores devueltos

Devuelve TRUE en caso de éxito. De lo contrario, devuelve FALSE

Ejemplos

Ejemplo #1 Ejemplo de MysqlndUhConnection::close()

<?php
function close_type_to_string($close_type) {
 
$mapping = array(
  
MYSQLND_UH_MYSQLND_CLOSE_DISCONNECTED => "MYSQLND_UH_MYSQLND_CLOSE_DISCONNECTED",
  
MYSQLND_UH_MYSQLND_CLOSE_EXPLICIT => "MYSQLND_UH_MYSQLND_CLOSE_EXPLICIT",
  
MYSQLND_UH_MYSQLND_CLOSE_IMPLICIT => "MYSQLND_UH_MYSQLND_CLOSE_IMPLICIT",
  
MYSQLND_UH_MYSQLND_CLOSE_LAST => "MYSQLND_UH_MYSQLND_CLOSE_IMPLICIT"
 
);
 return (isset(
$mapping[$close_type])) ? $mapping[$close_type] : 'unknown';
}

class 
proxy extends MysqlndUhConnection {
  public function 
close($res$close_type) {
   
printf("%s(%s)\n"__METHOD__var_export(func_get_args(), true));
   
printf("close_type = %s\n"close_type_to_string($close_type));
   
/* ADVERTENCIA: se debe llamar al padre */
   
$ret parent::close($res$close_type);
   
printf("%s returns %s\n"__METHOD__var_export($rettrue));
   return 
$ret;
 }
}
mysqlnd_uh_set_connection_proxy(new proxy());

$mysqli = new mysqli("localhost""root""""test");
$mysqli->close();
?>

El resultado del ejemplo sería:

proxy::close(array (
  0 => NULL,
  1 => 0,
))
close_type = MYSQLND_UH_MYSQLND_CLOSE_EXPLICIT
proxy::close returns true

Ver también