欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP 微信接口封装类_PHP教程

程序员文章站 2022-04-22 19:55:54
...
weixin_run(); //执行接收器方法 class wechatCallbackapiTest { private $fromUsername; private $toUsername; private $times; private $keyword; public function weixin_run(){ $this->responseMsg(); $arr[]=array("很靠谱,不错!","aa","http://www.chuangen.com/pic/hj/s_4.png","http://www.baidu.com"); $arr[]=array("很靠谱,不错!","aa","http://www.chuangen.com/pic/hj/s_4.png","http://www.baidu.com"); $arr[]=array("很靠谱,不错!","aa","http://www.chuangen.com/pic/hj/s_4.png","http://www.baidu.com"); $this->fun_xml("news",$arr,array(2,0)); } function t($n){ include("t_api.php"); $c_name=$t_api[$n]; $json=file_get_contents("http://m.weather.com.cn/data/101110310.html"); return json_decode($json); } public function valid() { $echoStr = $_GET["echostr"]; //valid signature , option if($this->checkSignature()){ echo $echoStr; exit; } } public function responseMsg() { $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!empty($postStr)){ $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $this->fromUsername = $postObj->FromUserName; $this->toUsername = $postObj->ToUserName; $this->keyword = trim($postObj->Content); $this->times = time(); }else { echo "this a file for weixin API!"; exit; } } //微信封装类, //type: text 文本类型, news 图文类型 //text,array(内容),array(ID) //news,array(array(标题,介绍,图片,超链接),...小于10条),array(条数,ID) private function fun_xml($type,$value_arr,$o_arr=array(0)){ //=================xml header============ $con="fromUsername}]]>toUsername}]]>{$this->times}"; //=================type content============ switch($type){ case "text" : $con.="{$o_arr}"; break; case "news" : $con.="{$o_arr[0]}"; foreach($value_arr as $id=>$v){ if($id>=$o_arr[0]) break; else null; //判断数组数不超过设置数 $con.=" "; } $con.="{$o_arr[1]}"; break; } //end switch //=================end return============ echo $con.""; } private function checkSignature() { $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr == $signature ){ return true; }else{ return false; } } } ?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/735072.htmlTechArticle?php/** * 微信公众平台接口PHP100封装功能类文件 * author * date 2013-4-9 PRC:E+8 23:03 */define(TOKEN, chuangenit);$wechatObj = new wechatCallbackapiTest();$wechatObj-...