array(
array('foo' => '11'),
array('bar' => '22'),
);
鉴于上面的数组,不使用循环,是否可以输出以下字符串?
'11 22'
答案 0 :(得分:2)
这是一个单行:
$subject = array(
array('foo' => '11'),
array('bar' => '22'),
array('bar' => '33'),
);
echo implode(" ", array_map("implode", $subject ));
11 22 33
答案 1 :(得分:0)
很简单,你有一个多维数组。您的顶级数组有两个元素(也是数组),索引分别为“0”和“1”。
你的子数组是一个关联数组,所以你没有索引0,1,2 ... n,而是分别有'foo'和'bar'的索引。
所以如果你想显示数字11 ......
$array = array(
array('foo' => '11'),
array('bar' => '22'),
);
echo $array[0]['foo'];
要将它组成一个句子,你可以连接两个数组元素
$array = array(
array('foo' => '11'),
array('bar' => '22'),
);
echo $array[0]['foo'] . ' ' . $array[1]['bar'];
答案 2 :(得分:0)
您必须使用array_reduce方法
解决方案:
<?php
$a = array(
array('foo' => '11'),
array('bar' => '22'),
);
function glue($carry, $item){
$carry .= array_values($item)[0]." ";
return $carry;
};
var_dump(trim(array_reduce($a, "glue", "")));
?>