2012-06-22 32 views
0

這是一個新手問題,我知道。各種模板文件之間的PHP變量範圍

模板結構是你平常的index.php,與幾個require_once()的頁眉/頁腳等

我之前的任何放在require_once限定在的index.php的頂部的變種()對於基礎url,例如$ url ='http:// url';

那麼我想呼應了這一點,爲所有的模板文件,頭/指數/頁腳等,它的工作原理裏面的index.php如預期,但未能在所有模板文件未定義的變種所包含英寸

我知道這是一個var範圍問題,但我完全困惑如何解決它。

我知道該手冊說變量可用於包含的文件,但它們不是。這可能是我的本地PHP安裝的問題嗎?

編輯:創建了幾個測試文件,並且在2個文件之間定義了一個var,那麼爲什麼他們不能在我的主站點文件上工作?

任何幫助優雅地接收。

非常感謝

如果你使用(類中的函數)的函數或方法
+0

您需要向我們展示如何調用模板。如果在'$ url ='聲明和'include()'聲明之間有幫助函數,則輸入新的作用域。 – mario

+0

我只是簡單地將其簡化爲基本的include($ var.'header.php'),然後試圖在header.php的第1行上回顯$ var,並且它在運行時仍然未定義。真奇怪。 –

+0

在這裏找到的解決方案http://drupal.org/node/84410 –

回答

1

,那麼你需要做的global $variable函數內。否則,您將無法訪問它,您也可以將其定義爲常量。常數總是全球性的。

define('MYURL', $url); 

如果您還沒有這樣做,您可能需要使用PHP框架。