为了账号安全,请及时绑定邮箱和手机立即绑定

我的为啥回复不了图文呢?

elseif(strtolower($postObj->MsgType)=='text' && trim($postObj->Content) == '单图文'){//单图文
			$toUser=$postObj->FromUserName;
			$fromUser=$postObj->toUserName;
			$time=time();
			$msgType='news';
			$arr= array(
			    array(
				   	'title'=>'小刺猬',
					'description'=>'我是一只小刺猬',
					'picUrl'=>'http://localhost/tlweixin/public/images/rabbit.jpg',
					'url'=>'http://www.imooc.com',
			    ),
			);
			$template="<xml>
				<ToUserName><![CDATA[%s]]></ToUserName>
				<FromUserName><![CDATA[%s]]></FromUserName>
				<CreateTime>%s</CreateTime>
				<MsgType><![CDATA[%s]]></MsgType>
				<ArticleCount>".count($arr)."</ArticleCount>
				<Articles>";
			foreach($arr as $key=>$value){
				$template .="<item>
					<Title><![CDATA[".$value['title']."]]></Title> 
					<Description><![CDATA[".$value['description']."]]></Description>
					<PicUrl><![CDATA[".$value['picUrl']."]]></PicUrl>
					<Url><![CDATA[".$value['url']."]]></Url>
					</item>";
			}
			$template .="</Articles>
						</xml>";
		    echo sprintf($template,$toUser,$fromUser,$time,$msgType);



正在回答

2 回答

你对比下,我这个是对的

$toUser=$postObj->FromUserName;
$fromUser=$postObj->ToUserName;
$arr =array(
       array(       //二维数组变成多维数组  
           'title'=>'imooc',
           'description'=>"imooc is very cool",
           'picUrl'=>'http://www.imooc.com/static/img/common/logo.png',
           'url'=>'http://www.imooc.com',
           ),
);
$template = "<xml>
            <ToUserName><![CDATA[%s]]></ToUserName>
            <FromUserName><![CDATA[%s]]></FromUserName>
            <CreateTime>%s</CreateTime>
            <MsgType><![CDATA[%s]]></MsgType>
            <ArticleCount>".count($arr)."</ArticleCount>
            <Articles>";

       foreach($arr as $k=>$v){
           $template .="<item>
                       <Title><![CDATA[".$v['title']."]]></Title>
                       <Description><![CDATA[".$v['description']."]]></Description>
                       <PicUrl><![CDATA[".$v['picUrl']."]]></PicUrl>
                       <Url><![CDATA[".$v['url']."]]></Url>
                       </item>";
       }


       $template .="</Articles>
                   </xml> ";






echo sprintf($template, $toUser, $fromUser, time(), 'news');


0 回复 有任何疑惑可以回复我~
#1

小刺猬1 提问者

感谢你的代码,找到错误了!
2017-08-24 回复 有任何疑惑可以回复我~
#2

kihoor 回复 小刺猬1 提问者

错误在哪?,我现在只能推送文本,其他类型都无法推送
2018-01-10 回复 有任何疑惑可以回复我~

$msgType =‘news’

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP实现微信公众平台开发—提升篇
  • 参与学习       64903    人
  • 解答问题       257    个

本课程详细讲解了接收微信用户发送的消息和接收订阅关注的事件推送

进入课程

我的为啥回复不了图文呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信