Можно ли распаковать массив переменных один раз?

Вероломство

PHP:
  1. echo str_replace(‘{content}’, $this->cutScript($this->getOnly($file_view)), $this->getOnly($file_layout));
  2.  
  3. private function cutScript($buffer)
  4. {
  5.     $pattern = ‘~<script.*?</script>~si’;
  6.  
  7.     preg_match_all($pattern, $buffer, $this->scripts);
  8.  
  9.     if ($this->scripts) {
  10.         $buffer = preg_replace($pattern, », $buffer);
  11.     }
  12.  
  13.     return $buffer;
  14. }
  15.  
  16. private function getOnly($file)
  17. {
  18.     extract($this->vars); // как распаковать один раз?
  19.  
  20.     ob_start();
  21.  
  22.     require $file;
  23.  
  24.     return ob_get_clean();
  25. }

дело в том, что некоторые переменные нужны И в шаблоне

оно не смертельно, но может есть способ extract два раза не дёргать?

 

MouseZver

можно. С помощью кеширования инициализированных переменных.

Но смысл ? Действия же будут от extract или от cash с присвоением значений переменным

 

Вероломство

думал может есть простая какая фишка: типа вынести extract перед echo :)

ok, оставил как есть, спс

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *