Получение переменной объекта используя строку + переменная - PullRequest
12 голосов
/ 28 декабря 2011

Я хотел бы сделать что-то вроде этого: echo $myObject->value_$id но я не знаю правильный синтаксис, и я не уверен, возможно ли это.

$id - это некоторая переменная PHP, например, имеет значение 1. В конце я хотел бы получить $myObject->value_1, но числовая часть (1) должна быть динамической.

Ответы [ 3 ]

23 голосов
/ 28 декабря 2011

Функция называется переменные свойства :

<?php

$myObject = (object)NULL;
$myObject->value_1 = 'I am value nr 1';

$id = 1;
echo $myObject->{"value_$id"};
5 голосов
/ 28 декабря 2011

Это работает:

$variableName = 'value_whatever_1337';
echo $myObject->$variableName;
4 голосов
/ 28 декабря 2011
$name = "value_" . $id;
echo $myObject->$name;
...