解决方案 »

  1.   

    use 中文释义 使用function($match) use ($ten) { return (($match[0] + $ten)); }
    让变量 $ten 在匿名函数中可以被使用相当于
    $ten = 10;
    function foo($match) {
      global $ten;
      return (($match[0] + $ten));
    }
    不过如果 $ten 不是全局变量的话就有麻烦了
      

  2.   

    php 5.3新增的闭包语法闭包函数(匿名函数)可以从父作用域中继承变量   任何此类变量都应该用 use 语言结构传递进去
      

  3.   


    5.2中可以替换吗? 
    如果不是全局变量可以就不能做了吗?$ten;
      

  4.   

    5.2  不能用你可以这样
    $string = "Some numbers: one: 1; two: 2; three: 3 end";
    $ten = 10;
    $newstring = preg_replace_callback(
        '/(\\d+)/',
        create_function('$match', "return \$match[0] + $ten;"),
        $string
        );
    echo $newstring;