mysqli_driver::$report_mode

mysqli_report

(PHP 5, PHP 7, PHP 8)

mysqli_driver::$report_mode -- mysqli_reportHabilita o desabilita las funciones internas de notificación

Descripción

Estilo orientado a objetos

Estilo por procedimientos

Una función útil para mejorar consultas durante el desarrollo de código y pruebas. Dependiendo de las banderas, notifica errores desde llamadas a funciones de mysqli o consultas que no usan un índice (o usan uno erróneo).

Parámetros

flags

Banderas admitidas
NombreDescripción
MYSQLI_REPORT_OFFDesactiva la notificación
MYSQLI_REPORT_ERRORNotifica errores desde llamadas a funciones de mysqli
MYSQLI_REPORT_STRICT Lanza una mysqli_sql_exception para errors en lugar de para advertencias
MYSQLI_REPORT_INDEXNotifica si no se usó un índice o si era erróneo en una consulta
MYSQLI_REPORT_ALLEstablece todas las opciones (notifica todo)

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Historial de cambios

VersiónDescripción
5.3.4 El cambio de modo de notificación ahora es por solicitud, en vez de por proceso.
5.2.15 El cambio de modo de notificación ahora es por solicitud, en vez de por proceso.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php

$mysqli
= new mysqli("localhost", "mi_usuario", "mi_contraseña", "world");


if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}


$controlador = new mysqli_driver();
$controlador->report_mode = MYSQLI_REPORT_ALL;

try {


$resultado = $mysqli->query("SELECT Name FROM Nonexistingtable WHERE population > 50000");


$resultado = $mysqli->query("SELECT Name FROM City WHERE population > 50000");

$resultado->close();

$mysqli->close();

} catch (
mysqli_sql_exception $e) {

echo
$e->__toString();
}
?>

Ejemplo #2 Estilo por procedimientos

<?php

mysqli_report(MYSQLI_REPORT_ALL);

$enlace = mysqli_connect("localhost", "mi_usuario", "mi_contraseña", "world");


if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}


$resultado = mysqli_query("SELECT Name FROM Nonexistingtable WHERE population > 50000");


$resultado = mysqli_query("SELECT Name FROM City WHERE population > 50000");

mysqli_free_result($resultado);

mysqli_close($enlace);
?>

Ver también

To Top