Проблема с get_file_contents и областью действия в PHP - PullRequest
0 голосов
/ 10 ноября 2011

При разработке сайтов я использую очень (очень) простую систему создания страниц:

//$_page is, of course, declared above the loop, just as $needed_modules is.

foreach ($needed_modules as $part) 
{
    global $_page;

    if (file_exists($part)) {

        $_page . file_get_contents($part);
    } else {
        //404
    }
}

echo $_page;

Теперь проблема в том, что file_get_contents ничего не возвращает: не ложь, не строка, а nada (а файл не пуст).

Выполнение делает внутри части if, а $ (что соответствует имени файла с относительным путем) не просто установлено, но фактически указывает на файл .

Почему $ _page пуст (в отличие от set , isset ($ _ page) фактически оценивается в TRUE)?

Редактировать: Сообщения об ошибках находятся на полном газу на моем сервере, и журналы показывают ничего необычно.

Ответы [ 2 ]

5 голосов
/ 10 ноября 2011

Вы не сохраняете возвращаемое значение file_get_contents:

$_page . file_get_contents($part);

Я думаю, вы хотели сказать:

$_page .= file_get_contents($part);
2 голосов
/ 10 ноября 2011

Вы ничего не делаете с возвращенным значением. Попробуйте это:

$_page .= file_get_contents($part);
...