$menu){ foreach($menuList2 as $k=>$menu2){ if($menu['id'] == $menu2['pid']){ $menuList[$key]['sub_button'][] = $menu2; unset($menuList[$k]); } } } foreach($menuList as $key=>$menu){ if($menu['type'] == 'view'){ $menuList[$key]['url'] = urlencode($menu['code']); }else if($menu['type'] == 'click'){ $menuList[$key]['key'] = $menu['code']; }else if(!empty($menu['type'])){ $menuList[$key]['key'] = $menu['code']; if(!isset($menu['sub_button'])) $menuList[$key]['sub_button'] = array(); } unset($menuList[$key]['code'], $menuList[$key]['id'], $menuList[$key]['pid']); $menuList[$key]['name'] = urlencode($menu['name']); if(isset($menu['sub_button'])){ unset($menuList[$key]['type']); foreach($menu['sub_button'] as $k=>$son){ if($son['type'] == 'view'){ $menuList[$key]['sub_button'][$k]['url'] = urlencode($son['code']); }else if($son['type'] == 'click'){ $menuList[$key]['sub_button'][$k]['key'] = $son['code']; }else{ $menuList[$key]['sub_button'][$k]['key'] = $son['code']; $menuList[$key]['sub_button'][$k]['sub_button'] = array(); } unset($menuList[$key]['sub_button'][$k]['code'], $menuList[$key]['sub_button'][$k]['id'], $menuList[$key]['sub_button'][$k]['pid']); $menuList[$key]['sub_button'][$k]['name'] = urlencode($son['name']); } } } $data = array('button' => array_values($menuList)); $data = json_encode($data); $data = urldecode($data); $accessToken = AccessToken::getAccessToken(); $url = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token='.$accessToken; $result = Curl::callWebServer($url, $data, 'POST'); return $result['errcode'] == 0 ? true : $result; } public static function getMenu(){ $accessToken = AccessToken::getAccessToken(); $url = 'https://api.weixin.qq.com/cgi-bin/menu/get?access_token='.$accessToken; return Curl::callWebServer($url, '', 'GET'); } public static function delMenu(){ $accessToken = AccessToken::getAccessToken(); $url = 'https://api.weixin.qq.com/cgi-bin/menu/delete?access_token='.$accessToken; return Curl::callWebServer($url, '', 'GET'); } }