2011-01-08 7 views
0

Кто-нибудь знает, как создать PHP-корневой каталог как и Wordpress? Это должно быть как wordpress.
ив получил некоторые папкиPHP-корневой каталог

*include: 
-header.php 
-footer.php 
*images 
*forms 
-index.php 

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

+0

Можете ли вы уточнить, о чем вы просите? Вы пытаетесь воспроизвести стратегию загрузки классов WordPress? – Rob

+0

@ Rob да что-то вроде. как насчет использования '$ _SERVER ['DOCUMENT_ROOT']' будет ли он работать глобально? – tonoslfx

ответ

1

Наименее странным образом я сумел сделать это:

  1. Добавьте свой корень приложения (часто $_SERVER[DOCUMENT_ROOT]) в include_path (легко сделать в php.ini, Apache конфигурации, или во время выполнения с set_include_path)
  2. определить функцию __autoload к require "classes/{$classname}.class.php"

Вам может понадобиться сделать имена файлов прописным; я забываю, что __autoload получает имя класса в качестве нижнего регистра, но я, кажется, помню проблемы с этим.

0

$_SERVER['DOCUMENT_ROOT'] будет работать по всему миру.

$_SERVER является одним из superglobals PHP.

1

Вы должны указать include_path. include_path работает как $PATH на Windows и UNIX. Когда вы запрашиваете файл (с требованием или включите), PHP попытается найти его в текущем каталоге. Если он не найден, начнется попытка с каталогами, указанными в include_path.

include_path переменная среды php.ini, так что вы можете изменить его в главном php.ini файле, в вашем .htaccess с помощью php_value, или во время выполнения с помощью set_inclue_path.

Когда вы добавили, например, папка class, то вы можете запустить require('class/foo.php'); в любом из файлов вашего проекта, и он будет найти свою глобальную папку класса, только если вы не есть еще один класс папка там.

Удачи вам!

1

Не уверен, что это имеет много общего с тем, что вы ищете, но на всякий случай это помогает: на большинстве сайтов я делаю с нуля, я включаю необходимые файлы php в разные папки (в зависимости от языка, раздела и т. Д.). с простым кодом. Из URL, я получаю язык и раздела и страницы переменных:

$root = $_SERVER['DOCUMENT_ROOT']; 
$include_string = ":/$root:/$root/$lang:/$root/$lang/$section:/$root/$lang/$section/$page"; 
ini_set("include_path", ".:../:$include_string"); 

Мой код является немного более сложным, потому что есть еще некоторые переменные и общие папки, но это как раз то же самое с некоторыми петлями и условными ,

Смежные вопросы