Hint: If you use
mysqli_report(MYSQLI_REPORT_ALL ^ MYSQLI_REPORT_STRICT)
normal errors are generated instead of exceptions.
mysqli_report
(PHP 5)
mysqli_report — Enables or disables internal report functions
Beschreibung
bool mysqli_report
( int $flags
)
mysqli_report() is a powerful function to improve your queries and code during development and testing phase. Depending on the flags it reports errors from mysqli function calls or queries which don't use an index (or use a bad index).
Parameter-Liste
- flags
-
Supported flags Name Description MYSQLI_REPORT_OFF Turns reporting off MYSQLI_REPORT_ERROR Report errors from mysqli function calls MYSQLI_REPORT_STRICT Report warnings from mysqli function calls MYSQLI_REPORT_INDEX Report if no index or bad index was used in a query MYSQLI_REPORT_ALL Set all options (report all)
Rückgabewerte
Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.
Beispiele
Beispiel #1 Object oriented style
<?php
/* activate reporting */
mysqli_report(MYSQLI_REPORT_ALL);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* this query should report an error */
$result = $mysqli->query("SELECT Name FROM Nonexistingtable WHERE population > 50000");
/* this query should report a warning */
$result = $mysqli->query("SELECT Name FROM City WHERE population > 50000");
$result->close();
$mysqli->close();
?>
Siehe auch
- mysqli_debug() - Performs debugging operations
- mysqli_dump_debug_info() - Dump debugging information into the log
mysqli_report
grepmaster
23-Mar-2009 01:51
23-Mar-2009 01:51
Polarina
10-Nov-2007 11:08
10-Nov-2007 11:08
It should be noted that all reports made by this function, are sent through an exception named 'mysqli_sql_exception' instead of a normal PHP warning.
anthony dot parsons at manx dot net
06-Nov-2005 03:23
06-Nov-2005 03:23
Be very careful using this function - it's a per-process setting.
If your server is set up to reuse a single PHP process for multiple requests, that means the last setting of this function in any script will affect all other scripts using mysqli.
To be safe always call <? mysqli_report(MYSQLI_REPORT_OFF) ?> at the end of a script. The CGI version of PHP is probably safe from this.
(Tested using PHP 5.0.5, Apache 2 SAPI module)
