Я в шоке от того что люди на полном серьезе задают такие вопросы.
Единственный вариант который имеет право на существование: на локальных, тестовых и прочих не продакшен серверах вывод
всех ошибок и нотисов является
строго обязательным, как и их исправление.
Напомню, что при включении предупреждений выводятся сообщения о необъявленных переменных и индексах массивов.
Если у Вас отключены нотисы - возникает огромный ворох плавающих ошибок с целостностью данных которые вы никогда не поймаете. Условно в каких то случаях модель вернула объект в котором какого то поля не хватает.
Если ошибки включены - вы это увидите и исправите. Если выключены - php молча подставит дефолтное значение. Вы никогда не поймете почему нотис - потому что вам лень объявить пустую переменную, или потому что где то реально произошел сбой. Единственный случай этого избежать - всегда писать код который в нормальном исполнении не кидает нотисы.
Мало того что ошибки нужно исправлять, по хорошему код нужно писать с обработкой exception и логикой "что делать если что то вдруг сломалось".
Единственное место где вывод любых ошибок должен быть отключен для пользователя (но они все равно должн ы логироваться, обрабатываться и исправляться) - это production.
PS
Больше приходится писать код, меньше сил остаётся на разработку.
Разработка это и есть написание кода который максимально правильно работает при любых внешних условиях.