Ошибка с! File_exists не удалась, но файл существует и загружается в браузер с URL - PullRequest
0 голосов
/ 04 марта 2012

Выдержка из приведенной ниже функции завершается ошибкой, но когда я копирую и вставляю URL-адрес в сообщении об ошибке в браузер, файл отображает только файл. Я также подтвердил, что файл загружен в правильную папку. Это часть класса в библиотеке в Codeigniter 2.1.0.

Что действительно странно, так это то, что! File_exists не работает, file_get_contents работает нормально. Заранее спасибо за любую помощь в этом.

public function output() {
if (!file_exists($this->file)) {
    return "Error loading template file ($this->file).<br />";
}
$output = file_get_contents($this->file);

Ответы [ 2 ]

4 голосов
/ 04 марта 2012

file_exists обращается к файлу через локальную файловую систему, в то время как браузер использует http (а веб-сервер направляет запрос в файловую систему).То, что один работает, не означает, что другой тоже должен работать.

Убедитесь, что файл существует, например, с помощью.ls на консоли.

2 голосов
/ 04 марта 2012

file_exists использовать локальный путь, а file_get_contents может использовать как локальный путь, так и URL.Таким образом, если $this->file является URL-адресом, то нормально, что file_exists завершается неудачно, но file_get_contents работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...