#CI框架控制器 _valid()) { #判判断是不是验证过 $echostr = $this->input->get('echostr'); if (!empty($echostr)) { #未验证 $this->load->view('valid_view', array('output' => $echostr)); } else { # 处理用户消息 $this->_responseMsg(); } } else#验证失败 { $this->load->view('valid_view', array('output' => 'Error!')); } } #用于接入微信的验证 private function _valid() { #获取token $token = TOKEN; $signature = $this->input->get('signature'); $timestamp = $this->input->get('timestamp'); $nonce = $this->input->get('nonce'); $tmp_arr = array($token, $timestamp, $nonce); sort($tmp_arr); $tmp_str = implode($tmp_arr); $tmp_str = sha1($tmp_str); return ($tmp_str == $signature); } #处理用户发送过来的消息 private function _responseMsg() { #获取获取表单提交过来的数据 $post_str = file_get_contents('php://input'); #判断是否为空 if (!empty($post_str)) { #解析微信传过来的 XML 内容 $post_obj = simplexml_load_string($post_str, 'SimpleXMLElement', LIBXML_NOCDATA); $from_username = $post_obj->FromUserName; $to_username = $post_obj->ToUserName; #接受用户输入的内容 $keyword = trim($post_obj->Content); #如果内容不为空 if (!empty($keyword)) { #文本类型的消息,本示例只支持文本类型的消息 $type = "text"; $content = $this->_parseMessage($keyword); #数据数组 $data = array( 'to' => $from_username, 'from' => $to_username, 'type' => $type, 'content' => $content, ); #分配数据 $this->load->view('response_view', $data); } else { #如果为空 $type = "text"; $content = "请输入文字"; #数据数组 $data = array( 'to' => $from_username, 'from' => $to_username, 'type' => $type, 'content' => $content, ); #分配数据 $this->load->view('response_view', $data); } } else { #错误 $this->load->view('valid_view', array('output' => 'Error!')); } } #解析用户输入的字符串 private function _parseMessage($keyword) { #开启错误日记 log_message('debug', $keyword); #处理用户的关键字 return '你好~!~'; }}
#输出界面 view试图]]> ]]> ]]> ]]> 0