2012-06-25 2 views
0

Как вы можете вернуться с <?php include("./php/content/index.php"); ?>?Прямо назад с PHP

Асин, если вы уже находитесь на странице:

www.address.com/about/index.php

как вы связать его в файл:

www.address.com/php/menu.php

Я знаю, что это работает, если вы о.е. t <?php include("www.address.com/php/content/index.php"); ?>, но мне сказали не использовать эти методы, поскольку это очень плохая практика.

ответ

1

Следующие примеры начинают из об/index.php

В относительном анкера:

<a href="../php/menu.php">Menu</a> 

В абсолютной анкера:

<a href="/php/menu.php">Menu</a> 

Если вы имеете в виду сервер, вы можете использовать header:

Header("Location: http://address.com/php/menu.php"); 

Или include:

Include("../php/menu.php"); 

Лучший способ иметь общую библиотеку в корне вашего вебсайта, из которого вы можете ссылаться на базовое место для всех файлов в проекте. То есть, если у вас /common.php, что вы включили на каждой странице, вы могли бы магазин:

define('SITE_ROOT', dirname(__FILE__)); 

Затем включают от любого документа, как всегда ссылаются абсолютно:

include(SITE_ROOT . 'php/menu.php'); 
2

вы можете перейти вниз структуру папок с двумя точками:

include("../php/content/index.php"); 

вы также можете использовать полный путь к файлу на сервере, так что вы можете использовать один и тот же лин е везде:

include("/var/www/php/content/index.php"); 

Использование URL с include() является плохой практикой, потому что

  • вы извлекая страницу с помощью HTTP, даже если файл находится на вашем собственном сервере
  • сервер будет анализировать PHP и передавать только содержимое HTML, поэтому вы теряете, например, переменные
  • вы должны иметь доступный файл из Интернета. Используя путь к файловой системе, вы можете иметь файл вне веб-узла.
Смежные вопросы