Чтобы получить наилучший возможный корневой путь, вы должны определить константу в вашем файле представления, т.е. (index.php), и сделать ее кросс-платформенной совместимостью.
после нескольких лет работы в PHP и мультиплатформенностиПриложения, которые я обнаружил, лучший способ сделать это - комбинация следующих встроенных функций PHP и констант:
- define
- str_replace
- dirname
__FILE__
Вот почему мы используем функции:
- Причина, по которой мы используем define, заключается в том, чтобы корень документа оставался в глобальной области действия
- Причина
str_replace
состоит в том, чтобы изменить косые черты для обеспечения кроссплатформенной совместимости - Причина
dirname
заключается в том, чтобы помочь относительный путь к файлу корневого представления - Причинадля
__FILE__
это обнаружение файла вида для dirname
Мы можем использовать __DIR__
для PHP5, но __FILE__
лучше, так как он будет поддерживать предыдущие версии Windows.
Полностью в сочетании вы быдействительный относительный путь к вашему файлу просмотра.
define("ROOT_PATH",str_repalce("\\","/",dirname(__FILE__)));
это даст идеальный относительный путь к вашему каталогу индекса без косой черты, вы должны затем включить ваши файлы следующим образом:
require_once ROOT_PATH . "/system/classes/some.class.php";
В Windows допустимы и /
, и \
, а для других операционных систем это просто /
, поэтому обычно вы всегда должны создавать свои приложения с /
в качестве разделителя каталогов.