按字符串获取 PHP 类属性

2022-08-30 06:35:35

如何基于字符串在 PHP 中获取属性?我就叫它吧。那么什么是?magicmagic

$obj->Name = 'something';
$get = $obj->Name;

会像...

magic($obj, 'Name', 'something');
$get = magic($obj, 'Name');

答案 1

喜欢这个

<?php

$prop = 'Name';

echo $obj->$prop;

或者,如果您可以控制该类,请实现 ArrayAccess 接口,然后直接执行此操作

echo $obj['Name'];

答案 2

如果要在不创建中间变量的情况下访问属性,请使用以下表示法:{}

$something = $object->{'something'};

这也允许您在循环中构建属性名称,例如:

for ($i = 0; $i < 5; $i++) {
    $something = $object->{'something' . $i};
    // ...
}

推荐