微信公众号小功能
以下都是借鉴的微信公众平台的文档加老师指点和自行的理解。
(1)微信公众号发送地区回复现在和未来五天天气情况
(2)发送语音和智能机器人聊天
一、调用天气预报接口
实现微信公众号发送地区回复现在和未来五天天气情况要去调用天气接口。
我使用的是聚合网的天气接口。
知道了接口的地址、返回格式、请求的方式那么接下来就好做了。
这里还要说一下向http发送请求的几种方式:
1.file_get_contents()
2.curl
3.fopen()
4.fsocket();
知道了发送请求的方式那么就可以写我们的代码了。
下面的是接收微信端消息的代码
private function receiveMsg(){
$xml = file_get_contents("php://input");//获取微信平台发来的消息
//file_put_contents("data.txt",$xml);//讲发来的消息写入文件
$obj = simplexml_load_string($xml,"SimpleXMLElement",LIBXML_NOCDATA);//将xml转为对象类型
return $obj;
}
这里是接收消息代码
//这里证明不是第一次接入了。 处理业务逻辑 接收消息
$obj = $this->receiveMsg();
//判断接收到的类型
switch($obj->MsgType){
case "text":
//城市
$city = str_replace('天气:',"",$obj->Content);
//key
$key = "ee9206e9a2c81fd162750d3321e072ea";
//接口地址 拼接接口地址
$url = "http://apis.juhe.cn/simpleWeather/query?city=".$city."&key=".$key;
//发送请求 默认为json格式将其转为数组类型
$data = json_decode(file_get_contents($url),true);
//file_put_contents('data.txt',$data);
//判断是否请求成功
if($data["error_code"]==0){
//当前的数据
$today = $data[