Из разряда «на заметку программисту». Есть такие вещи, о которых знаешь что они есть, но забываешь конкретную реализацию, когда доходит до использования. Именно так обстоит дело с тем, что описано в заголовке. Т.е. у нас есть переменная, где хранится имя свойства объекта, и нужно прочитать значение этого свойства. А возникает ситуация, когда нам нужно предварительно вычислить это имя свойства объекта, а потом уже к нему обратиться.
Первый вариант
Можно экземпляр объекта/класса обратить в массив и обращаться к его свойствам как элементам массива.
|
|
$object = new MyObject(); $property_name = 'propertyName'; ... $objArray = (array) $object; $value = $objArray[$property_name]; |
Второй вариант
«Вспомним» редко используемый синтаксис обращения к свойствам объекта. Тот же пример будет выглядеть так:
|
|
$object = new MyObject(); $property_name = 'propertyName'; ... $value = $object->{$property_name}; |
Данная запись опубликована в 12.12.2013 14:56 и размещена в рубрике PHP.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Ноябрь 13, 2015 г.
Пример хелпера-валидатора на PHP для проверки формата ip адреса.
[crayon-69ab5832d937b771404157/]
Функция проверяет является ли формально строка ip-адресом по протоколам ipv4 или ipv6. Возвращает булево значение.
Возможно применение этого кода ...
Читать
Апрель 11, 2013 г.
Да, представьте себе, у этой "пижни" есть свой API! Раньше им пользоваться было намного проще, не было этих наворотов с OAuth. Не смотря на мое личное ...
Читать
Январь 14, 2016 г.
Для начала разберемся что такое GMT и UTC. Во многих источниках они упоминаются как синонимы, и между ними действительно не существенная разница (до 1 секунды).
Их отличие в методике получения точного значения. UTC (универсальное координированное ...
Читать
Сентябрь 15, 2017 г.
Чтобы измерить скорость работы кода нужны две вещи - "код" и секундомер. Программный код у вас есть, а секундомер, оформленный в виде класса - можете взять здесь.
Очень простой, основанный на функции microtime(), секундомер скрывает рутину по сохранению ...
Читать
Спасибо!!!
Очень помогло
оч круто!