好的,所以我有這個功能。我已經把它剝離並刪除了所有的html。將函數轉換爲OO方法
if($session->power == 'admin'){
$adminMenu= $user->admin_menu;
foreach($adminMenu as $key => $value):{
echo $value; echo $key;
} endforeach;
}
我試圖變相成一種面向對象的方法,這一點,這是迄今爲止我的方法:
用戶類
public function get_menu(){
global $session;
$user_status = $session->power;
$adminMenus = $this->admin_menu; // associate array ($key => value)
$menu = array();
if($user_status == 'admin'){
foreach($adminMenus as $adminMenu):{
$menu = array($adminMenu);
return array_shift($menu);
} endforeach;
}
在顯示文件然後
while($user->get_menu()){
echo $user->get_menu();
}
我知道t他完全錯誤 - 因爲它不起作用。所以你可以幫助我使它面向對象。
您正在使用'foreach'以一種不可思議的方式。就像你正在結合正常的塊風格和替代語法。這很混亂。只要刪除':'和'endforeach;'(或者括號'{}')。 – 2011-04-10 00:20:55
也加入@Felix Kling的評論,這應該會導致一個致命的錯誤:'echo $ value echo $ key; ',以及foreach中的返回使foreach語句冗餘 – RobertPitt 2011-04-10 00:36:20