--TEST-- mysqli_fetch_object() - calling constructor on class wo constructor --EXTENSIONS-- mysqli --SKIPIF-- --FILE-- getMessage()); } printf("\nFatal error with PHP (but no exception!):\n"); var_dump($obj->mysqli_fetch_object_test(1, 2)); mysqli_close($link); print "done!"; ?> --CLEAN-- --EXPECTF-- No exception with PHP: object(mysqli_fetch_object_test)#%d (%d) { ["ID"]=> NULL ["label"]=> NULL ["a"]=> NULL ["b"]=> NULL } Exception with mysqli. Note that at all other places we throws errors but no exceptions unless the error mode has been changed: Exception: mysqli_fetch_object(): Argument #3 ($constructor_args) must be empty when the specified class (mysqli_fetch_object_test) does not have a constructor Fatal error with PHP (but no exception!): Fatal error: Uncaught Error: Call to undefined method mysqli_fetch_object_test::mysqli_fetch_object_test() in %s:%d Stack trace: #0 {main} thrown in %s on line %d