0

大家好,我有一个来自 json 数据的对象数组“$decodedData”。

var_export($decodedData);

接下来返回:

array ( 0 => array ( 'number' => '2', 'type' => 'accs', ), 1 => array ( 'number' => '5', 'type' => 'accs', ), )

我正在尝试输出所有“数字”值:

foreach ($decodedData as $number)
{
    echo implode(',', $number);
}

但我也得到“类型”值

2,accs5,accs

我怎样才能摆脱那些?

4

2 回答 2

3

你可以用它array_map来实现。

第一个参数是一个回调函数,它将接收每个元素并返回一些东西来替换它。在这种情况下,我们将返回number每个元素的键。

$result = array_map(function($val) {
    return $val['number'];
}, $array);

echo implode(',', $result);
于 2013-11-13T17:43:16.403 回答
1

您正在遍历一个数组数组,因此$number返回一个完整的数组,而不是数字值。要访问每个的数字值,请执行以下操作:

foreach ($decodedData as $number=>$val){
    echo implode(',', $val['number']);
}
于 2013-11-13T17:45:26.900 回答