2013-05-14 3 views
0

У меня есть следующий код запуска объекта; однако прямо сейчас он использует только 1 переменную ($online) .... Мне нужно добавить вторую переменную ($var2) в код, чтобы я мог иметь "var2"=> $var2 под номером "online"=> $online. Это нужно добавить в первую строку кода, где use (&$online), поэтому код знает, как использовать эту переменную.Добавление нескольких переменных в функцию ob_start

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); 
}); 

Как это можно добавить? Все, что я пытаюсь полностью разбить код.

ответ

0

Вы можете добавить столько переменных в use, как вам нравится, просто разделите их, как если бы параметры:

function($c) use (&$online,&$var2) 
+0

Работал отлично. Спасибо. Я приму ваш ответ за 10 минут, когда stackoverflow позволяет мне нажать кнопку. – kdjernigan

0

После документации PHP на closures, вы должны использовать запятые. Следуя документации php на arrays, вы также должны использовать запятые. В следующий раз попробуйте глядя вверх. В руководстве по php есть много ресурсов на эту тему.

ob_start(function($c) use (&$online, &$var2){ 
    $replacements = array(
    "online"=> $online, 
    "var2" => $var2, 
); 
// ... 
Смежные вопросы