如果我有一个带有数组作为属性的对象,那么访问它的最简单方法是什么?
$obj->odp = array("ftw", "pwn", array("cool" => 1337));
//access "ftw"
$obj->odp->0
//access 1337
$obj->odp->2->cool
这似乎不起作用。有什么我做错了,还是我必须先把它分配给一个变量?
$arr = $obj->odp;
//access "ftw"
$arr[0]
//access 1337
$arr[2]["cool"]
答案 0 :(得分:4)
只能使用数组语法($array['key']
)访问数组,只能使用对象语法($object->property
)访问对象。
仅对对象使用对象语法,仅对数组使用数组语法:
$obj->odp[0]
$obj->odp[2]['cool']
答案 1 :(得分:0)
这样做:
$obj->odp[0]['cool']
答案 2 :(得分:0)
$obj->odp
是一个数组,因此$obj->odp[0]
读取“ftw”。没有像$obj->odp->0
这样的东西。