Практические правила каталога PHP? - PullRequest
3 голосов
/ 30 июня 2011

Я пытаюсь убедиться, что мои пути к файлам настолько надежны, насколько это возможно, и все знают, что пути жесткого кодирования во многих случаях могут иметь катастрофические последствия.Существуют ли общие правила относительно ссылок на пути?В основном касательно ссылок выше $ _SERVER ['DOCUMENT_ROOT'].

Я делал ../../(x100000), но это выглядит неопрятно и надеется, что был более чистый путь.

Спасибо

Ответы [ 3 ]

2 голосов
/ 30 июня 2011

Чтобы получить текущий рабочий каталог: getcwd();

Чтобы получить точное имя каталога: basename(getcwd());

0 голосов
/ 30 июня 2011

Чтобы получить текущий каталог запущенного скрипта, я обычно делаю:

str_replace('//', '/', str_replace('\\', '/', dirname(__FILE__) . '/'));

Это немного хакерский, но надежный AFAIK.

Но я думаю, что он не будет работать с Windows UNC-путями (если вы их используете) ...

0 голосов
/ 30 июня 2011

Извлеките уроки из среды Codeigniter (которая хорошо обрабатывает относительные пути).

Посмотрите на код в файле индекса:

https://github.com/philsturgeon/codeigniter-reactor/blob/master/index.php

Вы можете видеть, что существует множество способов справиться с этим сценарием (некоторые лучше, чем другие), но этот файл покажет вам лучшие практики.

...