Как в PHP поймать ошибки?
потому что ворнинги/нотисы не являются  "Code that may throw an Exception or Error".
и для них нужен кастомный хэндлер.
https://ideone.com/kFL2XY
1. Можно проверять сами данные empty isset или тип данных gettype is_array etc
2. Можно дополнительную функцию, если значение данных будет играть на логику 
3. Можно заводить переменную для сбора ошибок