The public account automatically replies to the sample code and the sample code.
<? Phpdefine ("TOKEN", "weixin"); $ wechatObj = new wechatCallbackapiTest (); $ wechatObj-> responseMsg (); class wechatCallbackapiTest {public function responseMsg () {// get post data, May be due to the different environments $ postStr = $ GLOBALS ["HTTP_RAW_POST_DATA"]; // extract post dataif (! Empty ($ postStr) {/* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection, the best way is to check the validity of xml by yourself */libxml_disable_entity_loader (true ); $ postObj = simplexml_load_string ($ postStr, 'simplexmlelement', LIBXML_NOCDATA); $ fromUsername = $ postObj-> FromUserName; $ toUsername = $ postObj-> ToUserName; $ keyword = trim ($ postObj-> Content); $ time = time (); $ t ExtTpl = "<xml> <ToUserName> <! [CDATA [% s]> </ToUserName> <FromUserName> <! [CDATA [% s]> </FromUserName> <CreateTime> % s </CreateTime> <MsgType> <! [CDATA [% s]> </MsgType> <Content> <! [CDATA [% s]> </Content> <FuncFlag> 0 </FuncFlag> </xml> "; if (! Empty ($ keyword) {$ msgType = "text"; $ contentStr = "Welcome to wechat world! "; // Changed! $ ResultStr = sprintf ($ textTpl, $ fromUsername, $ toUsername, $ time, $ msgType, trans ($ keyword); echo $ resultStr ;} else {echo "Input something... ";}} else {echo" aha "; exit ;}} private function checkSignature () {// you must define TOKEN by yourself if (! Defined ("TOKEN") {throw new Exception ('token is not defined! ');} $ Signature = $ _ GET ["signature"]; $ timestamp = $ _ GET ["timestamp"]; $ nonce = $ _ GET ["nonce"]; $ token = TOKEN; $ tmpArr = array ($ token, $ timestamp, $ nonce); // use SORT_STRING rulesort ($ tmpArr, SORT_STRING ); $ tmpStr = implode ($ tmpArr); $ tmpStr = sha1 ($ tmpStr); if ($ tmpStr ==$ signature) {return true;} else {return false ;}}} function trans ($ content) {$ content = urlencode ($ content); $ api = 'aaaaaaaaaaa'; $ url = "Http://openapi.baidu.com/public/2.0/bmt/translate? Client_id = $ api & q = $ content & from = auto & to = auto "; $ str = file_get_contents ($ url); $ tmp = json_decode ($ str ); $ con = $ tmp-> trans_result; // echo $ con [0]-> dst. "<br>"; // $ url = "http://openapi.baidu.com/public/2.0/bmt/translate? Client_id = $ api & q = ". $ con [0]-> dst. "& from = auto & to = auto"; // $ str = file_get_contents ($ url); // $ tmp = json_decode ($ str ); // $ con = $ tmp-> trans_result; return $ con [0]-> dst;}?>