При попытке получить доступ к информации, которая не представлена в XML, как так: $someInfo = $element->blabla->cats[0]->src;
PHP показывает уведомление, как это: Notice: Trying to get property of non-object
Как бы урегулировать этот вопрос?PHP: Обратите внимание, когда error_reporting (E_ALL)
1
A
ответ
2
Либо $element
, blabla
, либо cats[0]
не является объектом и, следовательно, не может содержать никаких элементов.
Использование isset()
:
if (isset($element->blabla->cats[0]->src))
echo $element->blabla->cats[0]->src;
один isset()
не должен делать, нет необходимости проверять каждую часть последовательно.
Это должно выполняться, даже если cats
существует, но не является массивом.
0
вы можете использовать IsSet, чтобы проверить, если объект недвижимости существует, например:
if (isset ($element->blabla) && isset ($element->blabla->cats) && etc..)
, если вы просто не хотите видеть уведомление, используйте error_reporting(E_ALL & ~E_NOTICE)
0
Или альтернатива (но неправильно путь) вы можете подавить журнал в вашем PHP скрипта:
error_reporting(E_ERROR);
Что заставит PHP сообщать только фатальные ошибки.
В любом случае, используйте решение Pekka.
Смежные вопросы
- 1. PHP: Обратите внимание, когда error_reporting (E_ALL)
- 2. Каковы различия между error_reporting (E_ALL) и error_reporting (E_ALL & ~ E_NOTICE)
- 3. error_reporting (E_ALL) problem
- 4. PHP объясняет канал в error_reporting (E_ALL | E_STRICT);
- 5. Отображение ошибок с error_reporting (E_ALL)
- 6. error_reporting (E_ALL) не отображается сообщение об ошибке
- 7. error_reporting (E_ALL) не приводит к ошибке
- 8. php.ini error_reporting установлен E_ALL но не работает
- 9. Exception вместо Обратите внимание
- 10. Запрещено: mysql_connect(): обратите внимание
- 11. Обратите внимание на Chatbot
- 12. Обратите внимание, когда DIV скрыт или показан
- 13. Обратите внимание на существующий атрибут, когда Reflection.Emitting
- 14. error_reporting (E_ALL); Говорит $ ключ не определен
- 15. PHP Продолжительность Обратите внимание свежей установки TYPO3
- 16. Обратите внимание на предупреждения, связанные с PHP
- 17. PHP output_buffering работает только с error_reporting (E_ALL) выпуска
- 18. Обратите внимание на удаление ссылки
- 19. Обратите внимание на значение свойства
- 20. Обратите внимание при использовании объекта
- 21. Обратите внимание на текущую тему
- 22. PHP error_reporting 0
- 23. Обратите внимание, когда приложение пытается сделать снимок экрана (windows)
- 24. Обратите внимание, когда диаграмма Highcharts изменяется после изменения размера окна
- 25. Mongo Обратите внимание, когда поле даты документа прошло
- 26. Обратите внимание на значение внутри существующего подзапроса
- 27. Обратите внимание на конкретную ошибку в golang
- 28. Ошибка PHP: Обратите внимание: попытка получить свойство не-объекта
- 29. C# Обратите внимание, что при нажатии клавиши
- 30. Обратите внимание на общие значения внутри объекта
Duplicate: http://stackoverflow.com/questions/2345819/php-notice-when-error-reportinge-all – Franz