2017-02-12 16 views
0

Я использовал эту функцию в своих MVC-cms для размещения массива данных в моем php-файле с буфером (ob_start и ob_get_clean), и он работал в php5!PHP7 - Поведение по-разному в ob_start

private static function template ($path, $data = array(), $layout) 
{ 
    extract($data); 
    ob_start(); 
    include __ROOT__ . "/assets/views/$layout/$path.php"; 
    $content = ob_get_clean(); 
    require_once(__ROOT__ . "/assets/templates/$layout/index.php"); 
} 

Теперь я перехожу на php7, но он больше не работает! и он показывает коды непосредственно в моем браузере!

Что конкретно изменилось в php7?

+0

Я решил проблему, потому что Я не разрешил снимать открытые теги! –

ответ

1

Я думаю, это потому, что ваши библиотеки php7 не установлены или некоторые модули не включены так .. , если вы находитесь на ubuntu/debian. просто откройте терминал и введите:

sudo apt-get install php7.0 libapache2-mod-php7.0 

установит все, что нужно и запустить сервер Apache с поддержкой PHP7.

если не включен, а затем загрузить с:

sudo a2enmod php7.0 

и перезапустить Apache:

sudo service apache2 restart 

и если вы находитесь на окна, просто посетите this сайт

pirooz баши;)

+0

А также я точно не знаю, но могу php, но этот код не может заполнить код буфера данными. Нужно ли устанавливать эти пакеты? –