Python在语法上具有甜美的列表理解能力:
S = [x**2 for x in range(10)] print S; [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 在PHP中,我需要做一些循环:
$output = array(); $Nums = range(0,9);
foreach ($Nums as $num) { $out[] = $num*=$num; } print_r($out); 要得到:
数组([0] => 0 [1] => 1 [2] => 4 [3] => 9 [4] => 16 [5] => 25 [6] => 36 [7] => 49 [8] => 64 [9] => 81)
反正有没有在PHP中获得类似的列表理解语法?无论如何,PHP 5.3的任何新功能都可以做到吗?
谢谢! 问题来源于stack overflow
也许是这样的吗?
$out=array_map(function($x) {return $x*$x;}, range(0, 9)) 这将在PHP 5.3+中运行,在较旧的版本中,您必须分别为array_map定义回调
function sq($x) {return $x*$x;} $out=array_map('sq', range(0, 9));
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。