/** * 接受用户发送的消息 */ public static function receiveMsg($paramArr) { $options = array('subscribeCallback' => false, 'unsubscribeCallback' => false, 'clickCallback' => false); if (is_array($paramArr)) { $options = array_merge($options, $paramArr); } extract($options); $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!$postStr) { return array(); } $outArr = array(); $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); self::$userOpenId = $postObj->FromUserName ? (string) $postObj->FromUserName : ""; self::$ourWxId = $postObj->ToUserName ? (string) $postObj->ToUserName : ""; $msgType = (string) $postObj->MsgType; $outArr = (array) $postObj; $outArr["OurWeixinId"] = (string) self::$ourWxId; $outArr["UserOpenId"] = (string) self::$userOpenId; if ('event' == $msgType) { #事件的处理 switch ((string) $postObj->Event) { case "subscribe": #订阅事件 if ($subscribeCallback) { call_user_func($subscribeCallback, $outArr); } break; case "unsubscribe": #取消订阅 if ($unsubscribeCallback) { call_user_func($unsubscribeCallback, $outArr); } break; case "CLICK": #自定义菜单点击事件 self::$EventKey = $postObj->EventKey ? (string) $postObj->EventKey : ""; $outArr["MenuKey"] = (string) self::$EventKey; if ($clickCallback) { call_user_func($clickCallback, $outArr); } break; } } else { #普通消息 if ("text" == $msgType) { $outArr["Content"] = (string) $postObj->Content; } elseif ("image" == $msgType) { $outArr["PicUrl"] = (string) $postObj->PicUrl; } return $outArr; } }
function sendMessage($msg) { return API_Item_Open_Weixin::answerText(array('content' => $msg)); }
"type":"click", "name":"今日歌曲", "key":"V1001_TODAY_MUSIC" }, { "name":"菜单", "sub_button":[ { "type":"view", "name":"搜索", "url":"http://www.soso.com/" }, { "type":"view", "name":"视频", "url":"http://v.qq.com/" }, { "type":"click", "name":"赞一下我们", "key":"V1001_GOOD" }] }] }'; //获得一个AccessToken $accessToken = API_Item_Open_Weixin::getAccessToken(array('appId' => AppID, 'appSecret' => AppSecret)); $menuData = array('button' => array(array('name' => '会员', 'sub_button' => array(array('type' => 'click', 'name' => 'AA1', 'key' => 'BTN_MEMBER_VIEWSCORE'), array('type' => 'view', 'name' => 'AA2', 'url' => 'http://m.zol.com.cn/'), array('type' => 'scancode_push', 'name' => 'AA3', "key" => "rselfmenu_0_1", "sub_button" => array()))), array('name' => 'BB', 'sub_button' => array(array('type' => 'pic_sysphoto', 'name' => 'BB1', "key" => "rselfmenu_1_1", "sub_button" => array()), array('type' => 'pic_photo_or_album', 'name' => 'BB2', "key" => "rselfmenu_1_2", "sub_button" => array()), array('type' => 'location_select', 'name' => 'BB3', "key" => "rselfmenu_1_3", "sub_button" => array()))))); $menuData = api_json_encode($menuData); //创建菜单 $msg = API_Item_Open_Weixin::createManu(array('appId' => AppID, 'appSecret' => AppSecret, 'data' => $menuData)); var_dump($msg);