如何访问已转换为对象的数组的属性/值?比如我想访问索引0中的值,
$obj = (object) array('qualitypoint', 'technologies', 'India');
var_dump($obj->0);
错误,
Parse error: syntax error, unexpected T_LNUMBER, expecting T_STRING or T_VARIABLE or '{' or '$' in C:...converting_to_object.php on line 11
最佳答案
试试这个:
$obj = (object) array('test' => 'qualitypoint', 'technologies', 'India');
var_dump($obj->test);
结果是:
string(12) "qualitypoint"
但是尝试访问 $obj->0
,出现同样的错误:Parse error: syntax error, unexpected T_LNUMBER, expecting T_STRING or T_VARIABLE or '{' or '$'
如果你遍历这个对象,很艰难,你可以像普通数组一样正常访问属性:
foreach($obj as $x) {
var_dump($x);
}
显然,属性命名规则与basic variable naming rules相同.
如果将其转换为 ArrayObject,则可以正常访问索引:
$obj = new ArrayObject(array('qualitypoint', 'technologies', 'India'));
并倾倒它:
var_dump($obj[0]);
你会得到:
string(12) "qualitypoint"
关于php - 如何访问已转换为对象的数组的属性/值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10013143/