W3docs

get_client_info

Aprende sobre la función mysqli_get_client_info() en PHP, que devuelve la versión de la biblioteca cliente de MySQL utilizada por la extensión MySQLi.

La función mysqli_get_client_info() devuelve la versión de la biblioteca cliente de MySQL con la que se compiló la extensión MySQLi. Aquí, biblioteca cliente hace referencia a la biblioteca C (libmysqlclient o mysqlnd) que PHP utiliza para comunicarse con MySQL — no tu navegador, tu aplicación ni el servidor de base de datos. Esta página explica la sintaxis, qué indica realmente el valor de retorno y cómo difiere de las funciones relacionadas de "servidor" y "versión del cliente".

¿Qué es la biblioteca cliente?

Cuando PHP se comunica con MySQL, lo hace a través de una biblioteca cliente de bajo nivel compilada en la extensión MySQLi. En instalaciones modernas de PHP, casi siempre es mysqlnd (el MySQL Native Driver), que se distribuye con el propio PHP; versiones antiguas o compilaciones personalizadas pueden usar libmysqlclient de Oracle. mysqli_get_client_info() informa la cadena de versión de la que esté en uso, por ejemplo mysqlnd 8.1.0 o 8.0.30.

Esto es útil para:

  • Depurar problemas de conexión que dependen del controlador en uso.
  • Registrar detalles del entorno para que un informe de errores incluya la compilación exacta del cliente.
  • Verificar la compatibilidad cuando una función requiere una versión mínima de la biblioteca cliente.

Sintaxis

mysqli_get_client_info(?mysqli $mysql = null): string
ParámetroDescripción
$mysqlOpcional. Un enlace de conexión devuelto por mysqli_connect() / new mysqli(). Este parámetro se ignora en PHP moderno — el valor proviene de la biblioteca compilada, no de la conexión — pero se acepta por compatibilidad con versiones anteriores.

Valor de retorno: un string que describe la versión de la biblioteca cliente de MySQL. No se requiere una conexión para llamarla.

Ejemplo procedimental

Dado que la función lee un valor en tiempo de compilación, ni siquiera se necesita una conexión activa a la base de datos:

<?php
// No connection needed — this reflects the library PHP was built with
$client_info = mysqli_get_client_info();

printf("MySQL client library version: %s\n", $client_info);
?>

Una salida típica se ve así (la cadena exacta depende de tu compilación de PHP):

MySQL client library version: mysqlnd 8.1.0

Ejemplo orientado a objetos

MySQLi también expone este valor a través de la propiedad client_info y el método mysqli::get_client_info():

<?php
$mysqli = new mysqli("localhost", "username", "password", "database");

if ($mysqli->connect_errno) {
    die("Connection failed: " . $mysqli->connect_error);
}

// Both lines print the same value
echo $mysqli->client_info . "\n";
echo $mysqli->get_client_info() . "\n";

$mysqli->close();
?>

Biblioteca cliente vs. versión del cliente vs. información del servidor

Estas cuatro funciones son fáciles de confundir:

Si solo necesitas hacer una comprobación numérica de "¿es esta versión suficientemente nueva?", prefiere mysqli_get_client_version(). Usa mysqli_get_client_info() cuando quieras una etiqueta legible por humanos para los registros.

Conclusión

mysqli_get_client_info() devuelve un string legible por humanos con la versión de la biblioteca cliente de MySQL compilada en la extensión MySQLi. No requiere una conexión y es más útil para el registro y el diagnóstico. Para más información sobre cómo abrir conexiones, consulta mysqli_connect() y la descripción general de MySQLi.

Práctica

Práctica
¿Qué devuelve mysqli_get_client_info()?
¿Qué devuelve mysqli_get_client_info()?
Was this page helpful?