我有一个方法可以制作神奇的东西,然后以数组的形式返回我的结果。
例如
public function somemethod()
{
some stuff that builds an array
return $stuff;
}
如果你做了
$s = stuff();
print_r($s->somemethod());
你得到像
这样的东西array('a' => 'hi', 'b' => 'hello', 'c' => 'konnichiwa')
如何访问每个数组元素?
$s->somemethod()->a?
$s->somemethod()['a']
?
答案 0 :(得分:1)
使用foreach:
foreach($s->somemethod() as $key => $value)
//process $key and $value
}
或1乘1:
$arr = $s->somemethod();
$arr['a']
// $arr['b']
// $arr['c']
答案 1 :(得分:1)
你只需这样做:
$a = $s->somemethod();
echo( $a[ "a" ] );
答案 2 :(得分:1)
您有三种选择:
直接访问元素
$a = $s->somemethod();
echo $a['a'];
遍历所有元素
$a = $s->somemethod();
foreach ($a as $key => $value)
{
echo $key . ': ' $value
};
将元素移动到变量中
list($a, $b, $c) = $s->somemethod();
答案 3 :(得分:0)
function objectToArray( $object ){
if( !is_object( $object ) && !is_array( $object ) ){
return $object;}
if( is_object( $object ) ){
$object = get_object_vars( $object );}
return array_map( 'objectToArray', $object );}
答案 4 :(得分:0)
注意:PHP 5.4 未已发布尚未
在PHP 5.4中,您可以直接使用以下内容:
echo $s->somemethod()['a'];