我在Python中有一个集合:
set = {list} [[['x']], [], [], []]
i = 1
j = 0
这是我的问题代码:
set[i] += map(lambda x: [j] + x, set[i - 1])
计算后,该行产生以下正确的集合:
set = {list} [[['x']], [[0, 'x']], [], []]
是否可以创建相同的lambda函数 无论如何在PHP中使用array_map和lambda?
任何想法?
我试过了:
$set[$i] = array_map(function ($s,$j) { return $j + $s; } , $set[$i - 1]);
但是这不起作用,因为参数$ j在lambda中不可用
答案 0 :(得分:1)
$j
不应该是函数参数;相反,它应该是从周围范围捕获的变量,如:
$set[$i] = array_map(function ($s) use ($j) { return $j + $s; } , $set[$i - 1]);