php如何在temp函数中读取局部变量?

时间:2014-05-08 07:49:51

标签: php function scope

我注意到PHP现在可以使用临时函数定义(如js和其他脚本语言),但是如何在temp函数中获取局部变量?

例如:

function my_func($text, $prefix){
    $regex = '/xxxx/';
    return preg_replace_callback($regex, function($matches){
         // how to read $prefix here?
     }, $text);
}

2 个答案:

答案 0 :(得分:1)

use将完成这项工作..

function my_func($text, $prefix){
    $regex = '/xxxx/';
    return preg_replace_callback($regex, function($matches) use(&$prefix){ 
                                                          //^^^^^^^^^^^^^
     }, $text);
}

答案 1 :(得分:0)

我找到了..

http://www.php.net/manual/en/functions.anonymous.php

function my_func($text, $prefix){
    $regex = '/xxxx/';
    return preg_replace_callback($regex, function($matches) use ($prefix){
         // how to read $prefix here?
     }, $text);
}