While you are not displaying errors on screen ( display_errors = Off ) in php.ini, it is advisable to use trigger_error() in the script. This will cause the error message to be written to the error log.
I will add that it is generally not recommended to use @ to suppress errors. Problems with mysqli_connect() will also be written to the error log if you leave @ .
source share