У меня возникли некоторые проблемы с функцией ob_start, возможно, из-за нового PHP 5.5
То, что я пытаюсь сделать, это визуализировать некоторый PHP из третьего файла, используя внутри ob_start.
Вот код:
function fetch()
{
extract($this->a_vars); // Extract the vars to local namespace
ob_start();
include (templateClass.php); // This file is just 'text'
$s_contents = ob_get_contents();
ob_end_clean();
return $s_contents;
}
По сути, я занимаюсь извлечением некоторых переменных в локальном пространстве имен, которое будет использоваться шаблоном templateClass для рендеринга / отображения некоторых фрагментов текста, например:
...
function func1() {
return true;
}
<?if(isset($var1)):?>
function func2() {
return 2;
}
<?endif;?>
...
Но моя переменная $ s_contents содержит ровно ВСЕ содержимое файла, включая код php внутри, который не интерпретируется. Что мне нужно, так это интерпретировать все блоки php, и вывод будет моим последним пригодным для использования классом PHP.
Любая идея?
include (templateClass.php);
include ("templateClass.php");
Других решений пока нет …