Почему file_exists всегда возвращает false при установке значения в качестве параметра?

У меня есть такая функция:

public function asset_exists($path)
{
    $webRoot = realpath($this->kernel->getRootDir() . '/../web/');
    $toCheck = $webRoot . $path;
    if (!file_exists("/Users/mtmac/app/app-web/web/uploads/clients/5b7e824a97ba4.jpeg"))
    {
        return false;
    }
    return true;
}

Все работает хорошо, когда я помещаю значение в виде строки в функцию file_exists.

ПРОБЛЕМА: когда я изменяю условное IF

if (!file_exists($toCheck))
    { return false; }

Я всегда получаю возвращаемое значение FALSE из этого условия.

ПРИМЕЧАНИЕ :

а. Образ существует на диске

б. Значение параметра $toCheck равно
. /Users/mtmac/app/app-web/web/uploads/clients/5b7e824a97ba4.jpeg

php.net/manual/en/function.error-reporting.php
Funk Forty Niner 23.08.2018 14:12
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
1
51
1

Ответы 1

Заявление об ограничении ответственности: Я не разработчик PHP. Отвечая на этот вопрос, потому что я нашел это интересным и подумал о том, чтобы покопаться.

Теперь проблема, с которой вы столкнулись, похоже, связана со значением php include_path, установленным в файле .htaccess.

Вот комментарий на php.net о подобной проблеме. http://php.net/manual/en/function.file-exists.php#49805

Вот несколько выдержек из упомянутого мной комментария:

I spent the last two hours wondering what was wrong with my if statement: file_exists($file) was returning false, however I could call include($file) with no problem.

It turns out that I didn't realize that the php include_path value I had set in the .htaccess file didn't carry over to file_exists, is_file, etc.

Надеюсь это поможет!

Другие вопросы по теме