PHP匿名函数与array_walk

atp*_*atp 7 php anonymous-function

我正在尝试使用带有匿名函数的array_walk,但我总是得到错误

 // Parse error: syntax error, unexpected T_FUNCTION in ... on line X
 if(!empty($myArray)) {
   array_walk($myArray, function(&$value, $key){ // Line X
     $value = '"'.$value.'"'; // Add quotes
   });
 }
Run Code Online (Sandbox Code Playgroud)

周围的文件语法是正确的.有什么想法吗?

MrW*_*ite 7

是的,真正的匿名函数(闭包)只能从PHP 5.3中获得,但是你仍然可以使用create_function()调用在早期版本的PHP中创建一个匿名函数,该函数可以与array_walk()一起使用.就像是:

array_walk($myArray, create_function('&$value,$key', '$value = \'"\'.$value.\'"\';'));
Run Code Online (Sandbox Code Playgroud)


Mac*_*ade 6

检查您的PHP版本...匿名函数仅在5.3之后可用...