2012-11-17 66 views
0

我想跨類使用全局變量。輸出全局變量

基本上,函數render($html, $pageTitle);被調用。

在這一類中,存在的功能,如buildHeader($pageTitle)看起來像這樣:

private static function addHeader($pageTitle){ 
    global $pageTitle; 
    $html = self::capture_output('header.inc'); 
    return $html; 
} 

header.inc中,我定義變量$pageTitle全球,然而,這不是呼應的變量。

我也沒有收到變量未被定義/初始化的錯誤。

render函數調用私有方法,如addHeader來構建頁面內容。

回答

0

您可以通過函數參數來覆蓋$ pageTitle。此外,您應該使用$_GLOBALS['pageTitle'];而不是使用global,這會使代碼更清晰,並有助於避免出現此類衝突。另外,我相信你應該把你的global $pageTitle;改爲capture_output()函數,它似乎被使用了,而不是保留在addHeader()那裏沒有效果。