Подтвердить что ты не робот

Разница в PHP между уведомлением и предупреждением

При написании ошибок кода могут появляться предупреждения и уведомления. Я знаю идею ошибок. Я полагаю, что предупреждение должно сообщить вам о чем-то, что может вызвать ошибку, но не является ли это исключением? Я полагаю, что уведомление не является сообщением о том, что делает правильно;).

Это немного сбивает меня с толку. Может кто-нибудь сказать разницу между этими двумя и способ обработки этих сообщений.

4b9b3361

Ответ 1

Уведомление - это консультативное сообщение, означающее, что "вы, вероятно, не должны делать то, что делаете, но я позволю вам все равно"

Предупреждение - это сообщение, в котором говорится: "Вы делаете что-то не так, и это может привести к ошибкам в будущем, поэтому, пожалуйста, исправьте это".

Оба уведомления и предупреждения не остановят выполнение вашего script, хотя я бы посоветовал вам серьезно относиться к ним и стремиться не иметь даже одного уведомления в ваших приложениях.

Ответ 2

Здесь объясняются различия: http://www.php.net/manual/en/errorfunc.constants.php

Specifficaly:

Ошибка:

Неустранимая ошибки во время выполнения. Они указывают ошибки, которые невозможно восстановить, например проблема с распределением памяти. Выполнение script приостановлено.

Предупреждения:

Предупреждения во время выполнения (нефатальные ошибки). Выполнение script не останавливается.

Примечания:

Значения времени выполнения. Укажите, что script обнаружил что-то, что может указывать на ошибку, но может также произойти в обычном ходе работы script.

Ответ 3

  • ВНИМАНИЕ:   это короткое сообщение для того, чтобы сказать, что делать или что не делать.
  • ПРЕДУПРЕЖДЕНИЕ:   оккультирует во время выполнения. Выполнение кода продолжается.
  • ОШИБКА:   это также происходит во время выполнения, выполнение завершается.

Ответ 4

Я не буду повторять конкретные значения, которые были полностью покрыты другими ответами.

Предупреждения и уведомления указывают разные уровни "плохости" для вещей, которые вы можете делать неправильно, но я с руководствами PEAR/Zend на этом: вы всегда должны указывать на E_STRICT, а это значит, что вы никогда не должны поднимать предупреждения или уведомления.

Если вы следуете за совместимостью с E_STRICT, различие между уведомлениями и предупреждениями является излишним, если оба они считаются "Нефатальными ошибками, которые вы должны убедиться, что этого не произойдет" - они оба по существу предупреждают.

Ответ 5

  • УВЕДОМЛЕНИЕ. Это сообщение, в котором говорится, что вы должны делать, и что вы не должны делать.
  • ПРЕДУПРЕЖДЕНИЕ. Это происходит во время выполнения. Но это не прерывает выполнение кода.
  • ОШИБКА. Он также встречается во время выполнения, но выполнение программы не продолжается, завершается.

Ответ 6

Согласно Руководство по PHP:

  • ПРЕДУПРЕЖДЕНИЕ. Предупреждения во время выполнения (нефатальные ошибки). Выполнение script не приостанавливается.
  • УВЕДОМЛЕНИЕ - уведомления о времени выполнения. Укажите, что script обнаружил что-то, что может указывать на ошибку, но может также произойти в обычном ходе работы script.

Лично я думаю, что уведомления указывают на некоторые части кода, которые потенциально могут привести к некоторым проблемам, но которые были введены намеренно. В таких случаях программисту считается "знать, что он делает", и знать о некоторых конкретных функциях PHP (тип приведения, значения инициализации по умолчанию и т.д.).