Ответ 1
@является оператором управления ошибками. По сути, он подавляет ошибки.
В основном, я видел людей, использующих @
перед их вызовами функций, а не для каждой функции, но для некоторых функций расширения, таких как file_get_contents()
, mysql_connect()
и т.д.
И да, вопрос в том, с какой целью эти @
перед вызовом функции?
Или, другими словами, в чем разница между @file_get_contents()
и file_get_contents()
?
@является оператором управления ошибками. По сути, он подавляет ошибки.
Это PHP error control operator
, используемый для подавления любой ошибки, вызванной вызовом функции.
@function не показывает никаких сообщений об ошибках на своем выходе HTML, в то время как обычный вызов функции будет.
Символ @
перед функцией запрещает отображение ошибок при вызове функции.
У меня есть аналогичные сомнения относительно @, используемые перед функциями. Чтобы этого избежать, я сделал некоторую проверку перед вызовом функции. Мой пример:
if ( is_file($filename) )
$timestamp = filemtime( $filename );