public function serve(Server $server) { // 监听所有类型 $server->on('event', 'click', function ($event) { $appId = Config::get('wechat.app_id'); $appSecret = Config::get('wechat.secret'); $access_token = $this->access_token; $message = ''; $media = new media($appId, $appSecret); $arr = $media->lists('news', '0', '20'); if ($event['EventKey'] == 'a') { $media_id = '3gp3sK9--7rGxLoN_n78eYEDWwXJEB52EGa5QqvvAe8'; } else { if ($event['EventKey'] == 'b') { $media_id = 'dk6HHcmPn8H907So8ayA5UAd3K6i48AwZdMFE_5aV3I'; } } foreach ($arr['item'] as $v) { if ($v['media_id'] == $media_id) { foreach ($v['content']['news_item'] as $val) { $title = $val['title']; $digest = $val['digest']; $url = $val['url']; $imgid = $val['thumb_media_id']; $imgurl = 'https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=' . $access_token; $array = array('type' => 'image', 'offset' => '0', 'count' => '20'); $array = json_encode($array); $response = Curl::post($imgurl, array(), $array); $arr = json_decode($response); foreach ($arr->item as $k) { if ($k->media_id == $imgid) { $imgurl = $k->url; } } $message[] = Message::make('news_item')->title($title)->description($digest)->url($url)->picUrl($imgurl); } } } $this->message = $message; if ($event['EventKey'] == 'a') { return Message::make('news')->items(function () { $mes = array(); foreach ($this->message as $v) { array_push($mes, $v); } return $mes; }); } else { if ($event['EventKey'] == 'b') { return Message::make('news')->items(function () { $mes = array(); foreach ($this->message as $v) { array_push($mes, $v); } return $mes; }); } } }); $server->on('message', function ($message) { return "欢迎关注 Skyware!"; }); $result = $server->serve(); echo $result; }