0

我有以下对象起始代码;但是,现在它只使用 1 个变量 ( $online) .... 我需要$var2在代码中添加第二个变量 ( ) 以便我可以"var2"=> $var2"online"=> $online. 这需要添加到代码的第一行,use (&$online)以便代码知道使用此变量。

ob_start(function($c) use (&$online){
    $replacements = array(
        "online"=> $online
    );
    return preg_replace_callback("/{(\w+)}/",function($m) use ($replacements) {
        return isset($replacements[$m[1]]) ? $replacements[$m[1]] : $m[0];
    },$c);
});

我该如何添加这个?我尝试的一切都完全破坏了代码。

4

2 回答 2

0

您可以根据需要向 a 添加任意数量的变量use,只需将它们像参数一样分开:

function($c) use (&$online,&$var2)
于 2013-05-14T15:43:26.407 回答
0

按照关于closures的php文档,你应该使用逗号。按照有关数组的 php 文档,您还应该在此处使用逗号。下次尝试查找它。php 手册有很多关于这个主题的资源。

ob_start( function($c) use (&$online, &$var2){
  $replacements = array(
    "online"=> $online,
    "var2" => $var2,
 );
// ...
于 2013-05-14T15:49:18.323 回答