Моя файловая структура:
/holiday/admin/list.php /holiday/includes/functions.php # common functions /holiday/index.php # / is the document root # /holiday/ is a "self-contained" sub-directory # There are other "self-contained" sub-directories eg /promotion/, /international/
В functions.php
меня есть общая функция для генерации <head>
части HTML; также, функция для возврата абсолютного пути из корня документа. Обратите внимание на мою попытку рассчитать /holiday/includes/
.
<? function get_path() { // Technically, this returns dirname(__FILE__) - $_SERVER['DOCUMENT_ROOT'] return str_replace($_SERVER['DOCUMENT_ROOT'], "", dirname(__FILE__)); } ?> <? function open_page($head = "", $body_id = "") { ?> <!DOCTYPE HTML> <html> <head> <link type="text/css" rel="stylesheet" href="<? echo get_path() . "/../css/savvyextras.css"; ?>" /> <script type="text/javascript" src="<? echo get_path() . "/../scripts/modernizr.js"; ?>"></script> ... <? } ?>
functions.php
включен таким образом:
// From list.php require_once('../includes/functions.php'); open_page(...); // From index.php require_once('./includes/functions.php'); open_page(...);
Я чувствую, что здесь должен быть более простой подход, чтобы выполнить то же самое. Любая встроенная функция PHP для моего get_path()
? Может быть, я должен по-другому подойти к моей проблеме?
Примечание. Некоторые люди предложили использовать фреймворк (что хорошо). Но, чтобы помочь мне (и другим) понять весь этот файл include-file, другие неструктурные объяснения?
Связанные дискуссиях :