首页 php教程 php手册 简单的实现微信平台开发

简单的实现微信平台开发

Jun 06, 2016 pm 07:35 PM
实现 平台 开发 微信 简单

简单的实现微信平台开发 使用说明:新手入门很适合的,你可以看我转载的博客:http://my.oschina.net/xz360/blog/341169 也可以去看官网的文档:http://mp.weixin.qq.com/wiki/index.php?title=%E9%A6%96%E9%A1%B5 无 ?phpdefine ( "TOKEN", "weixin" );$wech

简单的实现微信平台开发
使用说明:新手入门很适合的,你可以看我转载的博客:http://my.oschina.net/xz360/blog/341169
也可以去看官网的文档:http://mp.weixin.qq.com/wiki/index.php?title=%E9%A6%96%E9%A1%B5
<?php
define ( "TOKEN", "weixin" );
$wechatObj = new wechatCallbackapiTest ();

if (isset ( $_GET ['echostr'] )) {
	$wechatObj->valid ();
} else {
	$wechatObj->responseMsg ();
}
class wechatCallbackapiTest {
	
	// 验证Token
	public function valid() {
		$echoStr = $_GET ["echostr"];
		if ($this->checkSignature ()) {
			echo $echoStr;
			exit ();
		}
	}
	
	// 验证签名
	private function checkSignature() {
		$signature = $_GET ["signature"];
		$timestamp = $_GET ["timestamp"];
		$nonce = $_GET ["nonce"];
		
		$token = TOKEN;
		$tmpArr = array (
				$token,
				$timestamp,
				$nonce 
		);
		sort ( $tmpArr, SORT_STRING );
		$tmpStr = implode ( $tmpArr );
		$tmpStr = sha1 ( $tmpStr );
		
		if ($tmpStr == $signature) {
			return true;
		}
		return false;
	}
	
	/* 回应 */
	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在测试阶段,给您带来的不便请谅解!";
				break;
			//取消关注
			case 'unsubscribe':
				$content = "欢迎您再次关注我们“女人要懂得爱自己”!";
				break;
		}
		if (is_array ( $content )) {
			$result = $this->transmitNews ( $object, $content );
		} else {
			$result = $this->transmitText ( $object, $content );
		}
		return $result;
	}
	
	/* 处理接收到的文本 */
	private function receiveText($object) {
		$keyword = trim ( $object->Content );
		if (strstr ( $keyword, "四六级" ) || strstr ( $keyword, "英语" )) {
			$content = array ();
			$content [] = array (
					"Title" => "2014年6月全国大学英语四六级考试成绩查询",
					"Description" => "",
					"PicUrl" => "http://img003.21cnimg.com/photos/album/20141104/m600/B2579ABF2B905FA793C6756A59044992.jpeg",
					"Url" => "http://apix.sinaapp.com/cet/index.php?openid=" . $object->FromUserName 
			);
			$content [] = array (
					"Title" => "刘强东带奶茶妹妹看牙 两人旁若无人地忘情缠绵(图)",
					"Description" => "",
					"PicUrl" => "",
					"Url" => "http://news.21cn.com/social/shixiang/a/2014/1105/11/28502924.shtml" 
			);
		} else {
			$content = date ( "Y-m-d H:i:s", time () ) . "\n目前正在测试阶段";
		}
		if (is_array ( $content )) {
			$result = $this->transmitNews ( $object, $content );
		} else {
			$result = $this->transmitText ( $object, $content );
		}
		return $result;
	}
	
	/* 输出文章 */
	private function transmitText($object, $content) {
		$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>";
		$result = sprintf ( $textTpl, $object->FromUserName, $object->ToUserName, time (), $content );
		return $result;
	}
	
	/* 输出图文 */
	private function transmitNews($object, $arr_item) {
		if (! is_array ( $arr_item ))
			return;
		
		$itemTpl = "
		<item>
		        <Title><![CDATA[%s]]></Title>
		        <Description><![CDATA[%s]]></Description>
		        <PicUrl><![CDATA[%s]]></PicUrl>
		        <Url><![CDATA[%s]]></Url>
		</item>
		";
		$item_str = "";
		foreach ( $arr_item as $item )
			$item_str .= sprintf ( $itemTpl, $item ['Title'], $item ['Description'], $item ['PicUrl'], $item ['Url'] );
		
		$newsTpl = "<xml>
    	<ToUserName><![CDATA[%s]]></ToUserName>
    	<FromUserName><![CDATA[%s]]></FromUserName>
    	<CreateTime>%s</CreateTime>
    	<MsgType><![CDATA[news]]></MsgType>
    	<Content><![CDATA[]]></Content>
    	<ArticleCount>%s</ArticleCount>
    	<Articles>
    		$item_str
    	</Articles>
    	</xml>";
		
		$result = sprintf ( $newsTpl, $object->FromUserName, $object->ToUserName, time (), count ( $arr_item ) );
		return $result;
	}
}
?>
登录后复制
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

微信朋友圈能看到访客吗 微信朋友圈能看到访客吗 May 06, 2024 pm 01:30 PM

1、微信是一款注重隐私保护的社交平台,用户无法查看谁访问了自己的朋友圈或个人主页。2、这种设计意在保护用户隐私,避免潜在的骚扰或窥探行为。3、用户只能看到朋友圈的点赞和评论记录,进一步保障了个人信息的保密性。

传言称'iPhone 16 可能不支持微信”,苹果中国区技术顾问称正与腾讯沟通应用商店抽成事宜 传言称'iPhone 16 可能不支持微信”,苹果中国区技术顾问称正与腾讯沟通应用商店抽成事宜 Sep 02, 2024 pm 10:45 PM

感谢网友情切琛思、HH_KK、石原里美幸福、华南吴彦祖的线索投递!9月2日消息,近期有传言称“iPhone16可能不支持微信”,对此贝壳财经记者致电苹果官方热线,苹果中国区技术顾问回应称,关于iOS系统或苹果设备能否继续使用微信,以及微信能否继续在苹果应用商店上架和下载的问题,需要苹果公司与腾讯之间进行沟通和探讨,才能确定之后的情况。软件应用商店及微信问题说明软件应用商店技术顾问指出,软件在苹果商店上架可能需要开发者支付费用。达到一定下载量后,后续下载需向苹果支付相应费用。苹果正与腾讯积极沟通,

微信删了的聊天记录怎么恢复 微信删了的聊天记录怎么恢复 May 06, 2024 pm 01:29 PM

1、要恢复已删除的微信聊天记录,需要使用两台手机进行数据迁移。2、在旧手机上,依次点击【我】→【设置】→【聊天】→【聊天记录迁移与备份】。3、选择【迁移】并设定目标设备平台,选择需要恢复的聊天记录后,点击【开始】。4、随后在新手机上登录同一账号并扫描旧手机二维码,即可启动迁移。5、迁移完成后,已删除的聊天记录将恢复到新手机中。

deepseek生成图片教程 deepseek生成图片教程 Feb 19, 2025 pm 04:15 PM

DeepSeek:强大的AI图像生成利器!DeepSeek本身并非图像生成工具,但其强大的核心技术为众多AI绘画工具提供了底层支持。想知道如何利用DeepSeek间接生成图片吗?请继续阅读!利用基于DeepSeek的AI工具生成图像:以下步骤将引导您使用这些工具:启动AI绘画工具:在您的电脑、手机浏览器或微信小程序中搜索并打开一个基于DeepSeek的AI绘画工具(例如,搜索“简单AI”)。选择绘画模式:选择“AI绘图”或类似功能,并根据您的需求选择图片类型,例如“动漫头像”、“风景

微信聊天记录怎么迁移到另一个手机 微信聊天记录怎么迁移到另一个手机 May 08, 2024 am 11:20 AM

1、在旧设备上,依次点击“我”→“设置”→“聊天”→“聊天记录迁移与备份”→“迁移”。2、选择要迁移的目标平台设备,选择需要迁移的聊天记录,点击“开始”。3、在新设备上使用同一微信账号登录并扫描二维码,即可开启聊天记录迁移。

知情人士回应'微信可能不支持苹果 iPhone 16”:传言为谣言 知情人士回应'微信可能不支持苹果 iPhone 16”:传言为谣言 Sep 02, 2024 pm 10:43 PM

微信支持iPhone16谣言被辟谣感谢网友西窗旧事、HH_KK的线索投递!9月2日消息,今日有传言称,微信可能不支持iPhone16,iPhone一旦升级到iOS18.2系统将无法使用微信。据《每日经济新闻》从知情人士处获悉,此传言为谣言。苹果回应另据贝壳财经报道,苹果中国区技术顾问回应称,关于iOS系统或苹果设备能否继续使用微信,以及微信能否继续在苹果应用商店上架和下载的问题,需要苹果公司与腾讯之间进行沟通和探讨,才能确定之后的情况。目前,苹果正与腾讯积极沟通,以确认腾讯是否会继续向苹果应用商

微信小程序怎么弄会员 微信小程序怎么弄会员 May 07, 2024 am 10:24 AM

1、打开微信小程序,进入对应的小程序页面。2、在小程序页面中查找会员相关入口,通常会员入口在底部导航栏或个人中心等位置。3、点击会员入口,进入会员申请页面。4、在会员申请页面,填写相关信息,如手机号码、姓名等,完成信息填写后,提交申请。5、小程序方会对会员申请进行审核,审核通过后,用户即可成为微信小程序会员。6、作为会员,用户将享有更多的会员权益,如积分、优惠券、会员专属活动等

微信朋友圈折叠成一行怎么办 微信朋友圈折叠成一行怎么办 May 06, 2024 pm 02:01 PM

1、避免频繁发布广告性质的内容,如持续推广产品或打折活动。2、慎用营销或敏感词汇,如【下单】、【购买】等。3、合理控制发布频率,避免频繁更新,至少间隔半小时。4、将文案分段呈现,每段不超过100字,控制长度在6行以内,200字以内。5、避免复制粘贴相同的文案,确保发布的内容具有独创性或经过适当改编。

See all articles