Почему file_exists вовзращает false, когда файл точно существует?
Что может пойти не так? Файл Test.txt находится на другом сервере (AD). file_exists возвращает false, но через проводник файл открывается. Пользователь тот же.
file_exists('P:\Программы\Test.txt'); // false
file_exists('\\\\srv-01\Программы\Test.txt'); // false
// обе ссылки работают в проводнике
Убрать названия не получится. Папка активно используется всеми. Веб-сервера нет. Я просто создал пустой файл с file_exists и запускаю его из командной строки.
l4m3r, как вариант, попробуйте в пути использовать "/" вместо "\". Win обычно нормально понимает пути с "/". Но я всё же склоняюсь к варианту, что проблема именно в русских буквах в пути. Побегал в свое время по этим граблям знатно. Еще, как вариант, отсутствие каких-либо прав на данный файл у пользователя, под которым выполняется РНР.
Да без разницы, какие слеши использовать. Просто одни нужно экранировать, другие нет
На платформах Windows, для проверки наличия файлов на сетевых ресурсах, используйте имена, подобные //computername/share/filename или \\computername\share\filename.