Dopo alcune ricerche ho finalmente appreso che il parametro della funzione è una maschera di bit e che è necessario combinare diversi valori per ottenere il risultato desiderato. La combinazione finale non è eccessivamente logica, ma funziona come previsto, generando un'eccezione su un errore di query ignorando gli avvisi.
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
produrrà il risultato desiderato:
Errore irreversibile:eccezione non rilevata 'mysqli_sql_exception' con messaggio 'Si è verificato un errore nella sintassi SQL; controlla il manuale che corrisponde alla versione del tuo server MySQL per la sintassi corretta da usare vicino a 'foo' alla riga 1'