Na wat onderzoek heb ik eindelijk geleerd dat de parameter van de functie een bitmasker is en dat je verschillende waarden moet combineren om het gewenste resultaat te krijgen. De laatste combinatie is niet al te logisch, maar het werkt zoals bedoeld, waardoor een uitzondering op een queryfout wordt gegenereerd terwijl waarschuwingen worden genegeerd.
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
zal het gewenste resultaat opleveren:
Fatale fout:niet-gevangen uitzondering 'mysqli_sql_exception' met bericht 'U heeft een fout in uw SQL-syntaxis; controleer de handleiding die overeenkomt met uw MySQL-serverversie voor de juiste syntaxis om te gebruiken in de buurt van 'foo' op regel 1'