При написании ошибок кода могут появляться предупреждения и уведомления. Я знаю идею ошибок. Я полагаю, что предупреждение должно сообщить вам о чем-то, что может вызвать ошибку, но не является ли это исключением? Я полагаю, что уведомление не является сообщением о том, что делает правильно;).
Это немного сбивает меня с толку. Может кто-нибудь сказать разницу между этими двумя и способ обработки этих сообщений.
Уведомление – это консультативное сообщение, означающее «Вы, вероятно, не должны делать то, что делаете, но я позволю вам сделать это в любом случае»
Предупреждение – это сообщение, в котором говорится: «Вы делаете что-то неправильно, и это может привести к ошибкам в будущем, поэтому, пожалуйста, исправьте это».
Как уведомления, так и предупреждения не будут останавливать выполнение вашего сценария, хотя я бы рекомендовал вам серьезно относиться к ним и стремиться не заметить ни одного уведомления в ваших приложениях.
Различия объясняются здесь: http://www.php.net/manual/en/errorfunc.constants.php
Specifficaly:
Ошибки:
Неустранимая ошибки во время выполнения. Они указывают на ошибки, которые не могут быть восстановлены, например проблема с распределением памяти. Выполнение сценария прекращается.
Предупреждения:
Предупреждения во время выполнения (нефатальные ошибки). Выполнение скрипта не останавливается.
Примечания:
Уведомления о времени выполнения. Укажите, что скрипт обнаружил что-то, что может указывать на ошибку, но может также произойти в ходе обычной работы скрипта.
Я не буду повторять конкретные значения, которые были полностью покрыты другими ответами.
Предупреждения и уведомления указывают разные уровни «плохости» для вещей, которые вы можете делать неправильно, но я с руководствами PEAR / Zend на этом: вы всегда должны указывать на E_STRICT, а это значит, что вы никогда не должны поднимать предупреждения или уведомления.
Если вы следите за совместимостью с E_STRICT, различие между уведомлениями и предупреждениями является излишним, если оба они считаются «Нефатальными ошибками, которые вы должны убедиться, что этого не произойдет» – они оба по сути являются предупреждениями.
Согласно руководству PHP :
Лично я думаю, что уведомления указывают на некоторые части кода, которые потенциально могут привести к некоторым проблемам, но которые были введены намеренно. В таких случаях программисту считается «знать, что он делает», и знать о некоторых конкретных функциях PHP (тип cast, значения инициализации по умолчанию и т. Д.).