2013-08-18 214 views
2

我有根目錄中的index.html和/ HTML中的所有支持文件。我在HTML目錄中的文件中包含Google分析代碼。它從我的index.html此代碼的頭部標籤之間的作品...PHP需要路徑 - 相同的目錄

<?php 
require('HTML/GoogleAnalytics.html'); 
?> 

但不是在任何的HTML目錄中的支持文件,相同的目錄文件我試圖要求/包括與此代碼...

<?php 
require('GoogleAnalytics.html'); 
?> 

從PHP.net「......包括將最終在調用腳本本身的目錄和失敗之前,在當前工作目錄檢查」

我在做什麼錯?

回答

3

爲了使其相對於當前文件,你可以在前面加上dirname(__FILE__)像這樣:

require(dirname(__FILE__) . '/GoogleAnalytics.html'); 

默認情況下,路徑是相對於該請求源於該文件。

+0

我代替我與你的代碼行,並沒有奏效。我不明白,它與調用頁面/腳本處於相同的位置。所以我試着把它放在一個目錄下,所以我想包含的文件在HTML/google/GoogleAnalytics.html中。所以它會和索引有相同的關係,它在那裏工作。沒有運氣。當我將Google添加到路徑時,索引仍然有效。 – topofsteel

7

從PHP 5.3(這是在生命週期結束後的這段時間),以後你也可以使用__DIR__不變,http://php.net/manual/en/language.constants.predefined.php

​​
+0

用該行代碼替換它導致頁面根本不加載。來自谷歌網站「PHP Implementation optional 使用上面的代碼創建一個名爲」analyticstracking.php「的PHP文件,並將其包含在每個PHP模板頁面中。然後,在開始之後立即將以下行添加到每個模板頁面標記: <?php include_once(「analyticstracking.php」)?>「我做錯了什麼? – topofsteel