簡體   English   中英

PHP從另一個文件夾包含

[英]PHP include from another folder

目前我有此文件夾結構

-Member

-Templates

and other folders

當我在Member / index.php中使用時,頁面上沒有任何顯示。

include("templates/header.php"); ?>

當我嘗試其他縮寫如

<?php $path = $_SERVER['DOCUMENT_ROOT']; $path .= "/templates/header.php";include_once($path);?>

要么

include 'templates/header.php';

什么也沒有發生。

在這種情況下,您如何使用php include?

如果您的文件夾名稱使用大寫字母,請嘗試以下操作:

include_once $_SERVER['DOCUMENT_ROOT'].'/Templates/header.php';

您也可以不使用/嘗試它:

include_once $_SERVER['DOCUMENT_ROOT'].'Templates/header.php'; 

如果您的文件夾沒有大寫字母,則將其保留為以下內容: templates當然,您可以將$_SERVER['DOCUMENT_ROOT']為變量,這樣就不必一直在聲明它

注意:這就是@Mahan所說的

就像在代碼中一樣,您指的是不存在的文件。

-Member

-Templates

and other folders

在Member / index.php中,當您包含這樣的文件時;

include("templates/header.php");

您實際上是在指Member文件夾中的文件。 相反,您應該使用$ _SERVER變量,或者應該引用include("/Templates/header.php");

但是最好的做法是使用$ _SERVER變量。


您已經在include語句中簡單給出了目錄名稱。 另外,請勿將目錄路徑直接附加到$path = $_SERVER['DOCUMENT_ROOT']; 變量。 而是在您的include語句中鍵入路徑。

喜歡 :

$root = $_SERVER['DOCUMENT_ROOT'];
include $root.'/Templates/header.php';

這樣,您無需在任何地方重新聲明$ _SERVER全局變量。

另外,練習一些調試! 如果您真的想學習,那就不要對所有內容都如此。 查找為什么“什么都沒有負擔”。

打印$ path,看看該路徑是否有效。 並檢查錯誤日志,他們說什么。 如果這樣做,您肯定會解決這個問題!

希望這是有道理的:-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM