Несоответствие регистра путей к файлам PHP на Mac / MAMP?

Я разрабатываю программу PHP на MAMP и только что понял следующее странное поведение:

echo "
PATH = ".dirname(__FILE__); include 'include.php';

include.php:

PATH = ".dirname(__FILE__);
?>

Результат:

PATH = / users / me / stuff / mamp_server / my_site (все строчные буквы)

PATH = / Users / me / Stuff / mamp_server / my_site (смешанный регистр)

Причина этого несовместимое поведение, и как я могу от него защититься? (Обратите внимание, что я не могу просто преобразовать все в нижний регистр, потому что приложение предназначено для сервера Linux, где пути к файлам чувствительны к регистру.)

Обновление:

Эта проблема существует для __ FILE __ и __ DIR __ .

Похоже, что это может быть реальной проблемой, без решения ... отправку отчета об ошибке, если я не услышу иное.

Отчет об ошибке:

https://bugs.php.net/bug.php?id=60017

Обновление:

И еще одно примечание: если вы используете абсолютный путь, включите (.. .) на Mac требуется версия со смешанным регистром.

23
задан Yarin 8 October 2011 в 23:48
поделиться