API获取天气预报,以及使用飞信API,给好友发送短信
程序员文章站
2022-06-13 10:16:22
...
php代码
<?php ########## # jiam 2012/12/5 # 1113160783@qq.com #自动发送飞信 #中间涉及到飞信接口 #天气预报API #以及城市代码 ########## #101180101是郑州城市代码 #101180301是新乡城市代码 $url='http://m.weather.com.cn/data/101180101.html'; $xinxiang='http://m.weather.com.cn/data/101180301.html'; $w=curl($url); $weather=json_decode($w); $weatherinfo=object_to_array($weather); $info=$weatherinfo['weatherinfo']; $str=$info['date_y'].','.$info['week'].'。'.$info['city'].'今天气温:'.$info['temp1'].',天气:'.$info['weather1'].'有'.$info['wind1'].',风力:'.$info['fx1'].',穿衣建议:'.$info['index_d'].$info['index48_d']; $feixin='http://wjima.a173.cnaaa4.com/feixin/str.php'; $postArray['userName']='手机号';//飞信账号 $postArray['password']='密码';//飞信密码 $postArray['content']=$str;//发送内容 $postArray['other']='接收方手机号';//接收方手机号,无此参数,默认给自己发送 $send=curl($feixin,$postArray); print_r($send);die(); function curl($url, $postFields = null) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_FAILONERROR, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //https 请求 if(strlen($url) > 5 && strtolower(substr($url,0,5)) == "https" ) { curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); } if (is_array($postFields) && 0 < count($postFields)) { $postBodyString = ""; $postMultipart = false; foreach ($postFields as $k => $v) { if("@" != substr($v, 0, 1))//判断是不是文件上传 { $postBodyString .= "$k=" . urlencode($v) . "&"; } else//文件上传用multipart/form-data,否则用www-form-urlencoded { $postMultipart = true; } } unset($k, $v); curl_setopt($ch, CURLOPT_POST, true); if ($postMultipart) { curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields); } else { curl_setopt($ch, CURLOPT_POSTFIELDS, substr($postBodyString,0,-1)); } } $reponse = curl_exec($ch); if (curl_errno($ch)) { throw new Exception(curl_error($ch),0); } else { $httpStatusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); if (200 !== $httpStatusCode) { throw new Exception($reponse,$httpStatusCode); } } curl_close($ch); return $reponse; } function object_to_array($obj) { $_arr = is_object($obj) ? get_object_vars($obj) : $obj; foreach ($_arr as $key => $val) { $val = (is_array($val) || is_object($val)) ? object_to_array($val) : $val; $arr[$key] = $val; } return $arr; } ?>
上一篇: 详解PHP数组赋值方法_PHP
下一篇: 四大微信小程序开发工具测评结果出炉