2015-01-12 34 views
0

我試圖到一個新的變量設置成JRegistry對象中的保護對象「數據」($ _SESSION變量中):Joomla! 2.5:設定值進入保護變量

["registry"]=> object(JRegistry)#22 (1) { 

    ["data":protected]=> object(stdClass)#23 (3) { 

     ["users"]=> object(stdClass)#24 (1) { 
      … 
     } 
     // here is my new variable supposed to be 
    } 
} 

我嘗試使用

JRegistry::set($_SESSION['__default']['registry']->data, $test);

JRegistry::setValue($_SESSION['__default']['registry']->data, $test);

但兩種方式都會引發錯誤消息「無法訪問受保護的屬性JRegistry :: $ data」。 有沒有辦法寫INTO這個受保護的變量? 。

回答

1

您使用的是JRegistry調用不正確,你沒有通過全局變量$ _SESSION在

簽名的set()setValue()電話是:

public function set($path, $value) 

public function setValue($path, $value) 

NB請注意,setValue()已棄用。

一旦你有你JRegistry對象,你通過傳遞$path屬性(如註冊表路徑例如「joomla.content.showauthor」)和值設定值。

+0

感謝您的好解釋! – LocalHorst