温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在微信公众平台中开发一个2048游戏

发布时间:2021-01-22 15:01:45 来源:亿速云 阅读:506 作者:Leah 栏目:开发技术

这篇文章给大家介绍怎么在微信公众平台中开发一个2048游戏,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

完整代码如下所示。

<?php define("TOKEN", "weixin"); $wechatObj = new wechatCallbackapiTest(); if (!isset($_GET['echostr'])) {  $wechatObj->responseMsg(); }else{  $wechatObj->valid(); } class wechatCallbackapiTest {  //验证签名  public function valid()  {   $echoStr = $_GET["echostr"];   $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){    echo $echoStr;    exit;   }  }  //响应消息  public function responseMsg()  {   $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];   if (!empty($postStr)){    $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);    $RX_TYPE = trim($postObj->MsgType);         //消息类型分离    switch ($RX_TYPE)    {     case "event":      $result = $this->receiveEvent($postObj);      break;     case "text":      $result = $this->receiveText($postObj);      break;    }    echo $result;   }else {    echo "";    exit;   }  }  //接收事件消息  private function receiveEvent($object)  {   $content = "";   switch ($object->Event)   {    case "subscribe":     $content = "欢迎关注方倍工作室\n回复 2048 开始游戏";     break;   }   if(is_array($content)){    if (isset($content[0])){     $result = $this->transmitNews($object, $content);    }else if (isset($content['MusicUrl'])){     $result = $this->transmitMusic($object, $content);    }   }else{    $result = $this->transmitText($object, $content);   }   return $result;  }  //接收文本消息  private function receiveText($object)  {   $keyword = trim($object->Content);      if (strstr($keyword, "2048")){    $content = array();    $content[] = array("Title"=>"2048游戏", "Description"=>"游戏规则很简单,每次可以选择上下左右其中一个方向去滑动,每滑动一次,所有的数字方块都会往滑动的方向靠拢外,系统也会在空白的地方乱数出现一个数字方块,相同数字的方块在靠拢、相撞时会相加。系统给予的数字方块不是2就是4,玩家要想办法在这小小的16格范围中凑出“2048”这个数字方块。", "PicUrl"=>"http://img.laohu.com/www/201403/27/1395908994962.png", "Url" =>"http://gabrielecirulli.github.io/2048/");   }else{    $content = date("Y-m-d H:i:s",time())."\n技术支持 方倍工作室";   }      if(is_array($content)){    if (isset($content[0]['PicUrl'])){     $result = $this->transmitNews($object, $content);    }else if (isset($content['MusicUrl'])){     $result = $this->transmitMusic($object, $content);    }   }else{    $result = $this->transmitText($object, $content);   }  }  //回复文本消息  private function transmitText($object, $content)  {   $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[%s]]></Content> </xml>";   $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time(), $content);   return $result;  }  //回复图文消息  private function transmitNews($object, $newsArray)  {   if(!is_array($newsArray)){    return;   }   $itemTpl = " <item>   <Title><![CDATA[%s]]></Title>   <Description><![CDATA[%s]]></Description>   <PicUrl><![CDATA[%s]]></PicUrl>   <Url><![CDATA[%s]]></Url>  </item> ";   $item_str = "";   foreach ($newsArray as $item){    $item_str .= sprintf($itemTpl, $item['Title'], $item['Description'], $item['PicUrl'], $item['Url']);   }   $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>%s</ArticleCount> <Articles> $item_str</Articles> </xml>";   $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, time(), count($newsArray));   return $result;  } } ?>

关于怎么在微信公众平台中开发一个2048游戏就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI