给定一个数组,如
$x = array(array('a', 'aa'), array('b', 'bb'), array('c', 'cc'));
Run Code Online (Sandbox Code Playgroud)
有array_column返回
array_column($x, 0) === array('a', 'b', 'c')
or
array_column($x, 1) === array('aa', 'bb', 'cc')
Run Code Online (Sandbox Code Playgroud)
现在,有反面吗?一个可以做的功能:
array_putoneaftertheother(array('a', 'b', 'c'), array('aa', 'bb', 'cc')) === array(array('a', 'aa'), array('b', 'bb'), array('c', 'cc'))
Run Code Online (Sandbox Code Playgroud)
没有想到我...
实现起来很容易,但我很惊讶有这么array_*多功能,PHP 没有原生版本?!
您可以使用array_map而不使用回调来执行多个数组:
$result = array_map(null, array('a', 'b', 'c'), array('aa', 'bb', 'cc'));
Run Code Online (Sandbox Code Playgroud)
或者以相同的方式使用一个更大的数组,通过 ...(splat 运算符)进行Argument 解包:
$result = array_map(null, ...array(array('a', 'b', 'c'), array('aa', 'bb', 'cc')));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
271 次 |
| 最近记录: |