0

でどのように戻り<?php include("./php/content/index.php"); ?>ますか?

あなたがすでにページにいる場合は、次のようにします。

www.address.com/about/index.php

ファイルにどのようにリンクしますか:

www.address.com/php/menu.php

入れればうまくいくことはわかっていますが<?php include("www.address.com/php/content/index.php"); ?>、その方法は非常に悪い習慣であるため、使用しないように言われました。

4

2 に答える 2

2

2 つのドットでフォルダー構造をたどることができます。

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

サーバー上のファイルのフルパスを使用して、どこでも同じ行を使用することもできます。

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

で URL を使用するinclude()ことは悪い習慣です。

  • ファイルが独自のサーバー上にあるにもかかわらず、HTTP を使用してページを取得している
  • サーバーは PHP を解析し、HTML コンテンツのみを渡すため、たとえば変数が失われます。
  • インターネットからファイルにアクセスできる必要があります。ファイル システム パスを使用すると、ファイルを webroot の外に置くことができます。
于 2012-06-25T13:50:39.723 に答える
1

次の例はabout/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");

より良い方法は、Web サイトのルートに共通のライブラリを用意し、そこからプロジェクト内のすべてのファイルのベースの場所を参照できるようにすることです。つまり、すべてのページに/common.phpを含めた場合、以下を保存できます。

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

次に、任意のドキュメントからのインクルードは、常に絶対的に参照されます。

include(SITE_ROOT . 'php/menu.php');
于 2012-06-25T13:49:06.160 に答える