尝试这个:
$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);
}
显然,属性命名规则与基本变量命名规则 http://www.php.net/manual/en/language.variables.basics.php.
如果将其转换为 ArrayObject,则可以正常访问索引:
$obj = new ArrayObject(array('qualitypoint', 'technologies', 'India'));
并倾倒它:
var_dump($obj[0]);
你会得到:
string(12) "qualitypoint"