您将如何在PHP中翻转90度(转置)多维数组?例如:
// Start with this array $foo = array( 'a' => array( 1 => 'a1', 2 => 'a2', 3 => 'a3' ), 'b' => array( 1 => 'b1', 2 => 'b2', 3 => 'b3' ), 'c' => array( 1 => 'c1', 2 => 'c2', 3 => 'c3' ) );
$bar = flipDiagonally($foo); // Mystery function var_dump($bar[2]);
// Desired output: array(3) { ["a"]=> string(2) "a2" ["b"]=> string(2) "b2" ["c"]=> string(2) "c2" } 您将如何实施flipDiagonally()? 问题来源于stack overflow
这是Codler / Andreas解决方案的一种变体,适用于关联数组。更长一些但没有循环:
[ "a1", "a2", "a3"], "fooB" => [ "b1", "b2", "b3"], "fooC" => [ "c1", "c2", "c3"] ); print_r( $transpose( $foo )); // Output like this: Array ( [0] => Array ( [fooA] => a1 [fooB] => b1 [fooC] => c1 ) [1] => Array ( [fooA] => a2 [fooB] => b2 [fooC] => c2 ) [2] => Array ( [fooA] => a3 [fooB] => b3 [fooC] => c3 ) );版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。