Includendo un sorgente PHP (con include o require e varianti varie ed eventuali), un errore di compilazione interromperà il flusso di programma in cui l’include è presente, senza alcuna segnalazione (tipicamente!).
Se l’inclusione è parametrica e abbiamo bisogno, non solo di proseguire il flusso di programma, ma anche sapere cosa diavolo è successo, è necessario configurare al volo il compilatore al fine di fornirci informazioni sugli errori, almeno nel breve periodo di attivazione della include:
Esempio:
ini_set('display_errors', 1);
while( $row = db_fetch_array( $result ) ) {
$function_library = '/var/www/plugin/' . $row['function'] . '.inc';
if ( ! file_exists( $function_library ) ) continue;
include $function_library;
}
ini_set('display_errors', 0);
Sul reference si vedrà come include o require ritornino un exit code, ma questo vale solo ad indicare inclusione o non inclusione: non gli errori di compilazione del file incluso: semplicemente il codice verrà interrotto TUTTO !!!!!
Link utili:
http://php.net/manual/en/function.error-reporting.php