Показать сообщение отдельно
  #1 (permalink)  
Старый 04.06.2012, 18:44
Аватар для Раед
''
Отправить личное сообщение для Раед Посмотреть профиль Найти все сообщения от Раед
 
Регистрация: 11.12.2011
Сообщений: 636

Передать переменную из функции во вложенную функцию
Вот один из методов класса
function go($mycbPhp, $mycb) {
  $repAll = "/(<\?(?:php)?.+\?>|<(?:c|m|=)%.+%e>)/sU";
  $resaults = array();
  if (!is_array($this->arrParsed)) return false;
  $evals = $this->arrParsed;
  foreach ($evals as $eval) {
   if ($eval['type']=='php') {
    $resaults[count($resaults)] = $mycbPhp($eval['string']);
   } elseif ($eval['type']=='templated') {
    $resaults[count($resaults)] = $mycb($eval['subtype'], $eval['string']);
   }
  }
  function replCB() {
   //сюда нужно передать переменную $resaults
   static $i = -1;
   $i++;
   return $resaults[$i];
  }
  return preg_replace_callback($repAll, 'replCB', $this->text);
 }

Как во вложенную функцию replCB передать переменную из функции go?
global не помогает.
Ответить с цитированием