在微信开发的页面上,设置好触发的关键词,及触发后跳转到指定的接口地址,如:http://www.gaobinzhan.com/picture.php
然后在网站服务器上创建picture.php文件,文件代码如下:

<?php
$wechatObj = new wechat();
$wechatObj->responseMsg();
class wechat {
  public function responseMsg() {
    //---------- 接 收 数 据 ---------- //
    //获取POST数据
    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; 
    //用SimpleXML解析POST过来的XML数据
    $postObj = simplexml_load_string($postStr,'SimpleXMLElement',LIBXML_NOCDATA);
    $fromUsername = $postObj->FromUserName; //获取发送方帐号(OpenID)
    $toUsername = $postObj->ToUserName; //获取接收方账号
    $keyword = trim($postObj->Content); //获取消息内容
    $time = time(); //获取当前时间戳
    //---------- 返 回 数 据 ---------- //
    //返回消息模板
    $textTpl = "<xml>
    <ToUserName><![CDATA[%s]]></ToUserName>
    <FromUserName><![CDATA[%s]]></FromUserName>
    <CreateTime>%s</CreateTime>
    <MsgType><![CDATA[%s]]></MsgType>
    <Image>
    <MediaId><![CDATA[%s]]></MediaId>
    </Image>
    <FuncFlag>0</FuncFlag>
    </xml>";
    $msgType = "image"; //消息类型
    $contentStr = '填写你上传图片的MediaID'; //返回消息内容
    //格式化消息模板
    $resultStr = sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$contentStr);
    echo $resultStr; //输出结果
  }
}
?>

这样,在微信服务号上输入对应的关键字,服务号上就会返回对应的图片。

MediaID的获取方法:
登陆微信公众平台->开发者工具->在线接口调试工具
接口类型选:基础支持
先获取access_token
access_token每次登陆都会变更

获取access_token后,接口列表选择多媒体文件上传接口
填入access_token,type选择image,media选择要回复的图片,图片上传成功后,就会返回一个MediaID,把它填入上面的代码中就可以了。

最后修改:2020 年 05 月 16 日 04 : 07 PM