[英]Make menu and submenu into reusable function
基本上我在這里嘗試做的是創建菜單和子菜單,它可以從腳本中的任何地方掛鈎,這意味着我可以從腳本的任何位置添加新菜單。 我現在要做的是為它創建一個可重用的功能。
在menu.php上
function add_admin_menu($admin_menu_page = array()){
return $admin_menu_page;
}
function add_admin_submenu($admin_submenu_page = array()){
return $admin_submenu_page;
}
$admin_menu_page[] = array("Dashboard", "dashboard");
$admin_menu_page[] = array("Pages", "pages");
$admin_menu_page[] = array("Setings", "setings");
$admin_submenu_page['dashboard'][] = array("Home", "home");
$admin_submenu_page['dashboard'][] = array("Update", "update");
$admin_submenu_page['pages'][] = array("Add New Page", "new");
$admin_submenu_page['pages'][] = array("All Pages", 'pages');
$admin_submenu_page['setings'][] = array("SMTP", "smtp");
$admin_submenu_page['setings'][] = array("Theme Options", "theme-options");
add_admin_menu($admin_menu_page);
add_admin_submenu($admin_submenu_page);
在index.php上
var_dump(add_admin_menu());
而輸出是
數組(0){}
我錯過了什么?
在一個簡單的問題中,我將如何將其轉化為功能?
如果您嘗試檢查傳遞給數組的內容,請嘗試這樣做。
function add_admin_menu($admin_menu_page = array()){
var_dump($admin_menu_page);
return $admin_menu_page;
}
但是沒有任何理由讓這個函數返回相同的數組。
如果你想在調用函數后想要var_dump,試試這個。
$menu = add_admin_menu($admin_menu_page);
$submenu = add_admin_submenu($admin_submenu_page);
var_dump($menu);
var_dump($submenu);
嘗試存儲您的值,也許是這樣:
function add_admin_menu($admin_menu_page = array()){
static $menu = array();
if(empty($menu)) $menu = $admin_menu_page;
return $menu;
}
該解決方案的缺陷是當時只有一個菜單;
這樣你可以存儲你想要的任何數量的菜單;
$menus = array();
function add_admin_menu($admin_menu_page = array()){
global $menus;
$index = sizeof($menus);
$menus[$index] = $admin_menu_page;
return $index;
}
請注意,它返回$index
,而不是輸入數組(沒有意義),因此您可以稍后訪問該菜單,甚至將其與某個sumbenu相關聯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.