该数组如下所示:
array(
array(5, true, 'Foo'),
array(8, true, 'Bar'),
array(8, true, 'FooBar'),
)
我可以确定第3列的最长字符串长度,而不必迭代数组吗?
在我的例子中,最长的字符串是“FooBar” – 6个字符.
如果内部数组只有字符串元素,我可以做max(array_map(‘strlen’,$arr)),但它有3个项目……
解决方法:
将array_map(‘array_pop’,$arr)添加到组合中:
<?PHP
$arr = array(
array(5, true, 'Foo'),
array(8, true, 'Bar'),
array(8, true, 'FooBaRSS')
);
print_r(max(array_map('strlen', array_map('array_pop', $arr))));
?>
给出8(在我添加两个s之后检查). array_pop()
关闭最后一个数组元素并返回它,使用array_shift()
得到第一个.