Как получить доступ к переменной с точкой
Вот часть моего var_dump($GLOBALS['pagination']);
:
object(VmPagination)[376]
...
public 'pages.total' => float 4
public 'pages.current' => float 1
public 'pages.start' => int 1
public 'pages.stop' => float 4
...
Есть ли идеи, как я могу получить доступ pages.total
и другие три переменные с точкой? Я старался $GLOBALS['pagination']->pages.current
, но это не работает.
1 ответ
Решение
Использовать {}
обозначения:
$foo->{'bar.baz'} = 'qux';
например:
php > $x = new StdClass();
php > $x->{'foo.bar'} = 'baz';
php > var_dump($x);
object(stdClass)#1 (1) {
["foo.bar"]=>
string(3) "baz"
}
php > echo $x->foo.bar;
PHP Notice: Undefined property: stdClass::$foo in php shell code on line 1
PHP Notice: Use of undefined constant bar - assumed 'bar' in php shell code on line 1
bar
php > echo $x->{'foo.bar'};
baz