Автор Тема: PHP: Как обратиться к свойству, в названии которого есть тире (черточка, минус)  (Прочитано 9403 раз)

Марахтанов Алексей

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 205
    • marahtanov.ru
Иногда в процессе работы может возникнуть ситуация, когда вам нужно обратиться к свойству объекта, имя которого содержит тире /черточку, дефис, знак минус / (например, "last-name"). Это может возникнуть, когда объект создается автоматически (например, при парсинге XML-файла через simplexml_load_string.

Стандартное обращение к свойству в таком случае выдаст ошибку:
$obj->last-name PHP будет воспринимать "-" как знак минус и выдаст ошибку:
Notice: Use of undefined constant name - assumed 'name'

Для решения проблемы к свойству нужно обратиться так

$obj->{"last-name"}
« Последнее редактирование: 18 Сентября 2013, 12:23:36 от Марахтанов Алексей »