<?php
/**     ┃      ┃   code is far away from bug with the animal protecting
    ┃      ┃  神兽保佑,代码无bug
    ┃     ┗━━━┓
    ┃             ┣┓
    ┃           ┏┛
    ┗┓┓┏━┳┓┏┛
      ┃┫┫  ┃┫┫
      ┗┻┛  ┗┻┛
 * @author 邹颢 zouhao619@gmail.com
2014-06-12
 */
class Fetion{
private $_url='http://quanapi.sinaapp.com/fetion.php';
private $_username;//发送者 飞信账号
private $_password; //发送者 飞信密码
/**
* 发送短信
* @param string $other
* @param string $msg
*/
public function sendMessage($other,$msg){
//由于飞信不能发送带有空格,所以特意用|符号来取代空格
$msg=urlencode($msg);
$data['u']=$this->_username;
$data['p']=$this->_password;
$data['to']=$other;
$data['m']=$msg;
return $this->_curl_get($this->_url,$data);
}
/**
* curl模拟http get请求
* @param string $url 请求网址
* @param string|array $data 请求參数
* @return string 网址内容
*/
private function _curl_get($url,$data=array()){
$url=rtrim($url,'/');
if(!empty($data)){
if(is_array($data)){
$first=true;
foreach($data as $k=>$v){
if($first){
$url.='?';
$first=false;
}else{
$url.='&';
}
$url.="{$k}={$v}";
}
}else{
$data=ltrim('?',$data);
$url.='?'.$data;
}
}
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_HEADER,false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 获取数据返回
if(substr($url,0,5)=='https'){
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
}
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
public function __set($name,$value){
$this->$name=$value;
}
} //使用实例
$f=new Fetion();
$f->_username='111';//设置发送飞信者 账户
$f->_password='222'; //设置发送飞信者 密码
$result=$f->sendMessage('333','111'); //发送飞信 333是接收者飞信账户 111是发送内容
$result=json_decode($result,true);
if($result['result']===0){//发送成功
echo $result['message'];
}else{
echo $result['message'];
}

飞信php接口 web service的更多相关文章

  1. 基于cxf开发restful风格的Web Service

    一.写在前面 webservice一些简单的其他用法和概念,就不在这里赘述了,相信大家都可以在网上查到,我也是一个新手,写这篇文章的目的一方面是想记录自己成长的历程,另一方面是因为学习这个的时候花了点 ...

  2. Web Service 接口测试

    Web Service 接口测试 Web service 概念 Web service使用与平台和编程语言无关的方式进行通讯的一项技术, web service 是一个接口, 他描述了一组可以在网络上 ...

  3. 通过ajax访问Tomcat服务器web service接口时出现No 'Access-Control-Allow-Origin' header问题的解决办法

    问题描述 通过ajax访问Web服务器(Tomcat7.0.42)中的json web service接口的时候,报以下跨域问题: XMLHttpRequest cannot load http:// ...

  4. (转)接口自动化测试 – Java+TestNG 测试 Restful Web Service

    本文主要介绍如何用Java针对Restful web service 做接口自动化测试(数据驱动),相比UI自动化,接口自动化稳定性可靠性高,实施难易程度低,做自动化性价比高.所用到的工具或类库有 T ...

  5. 免费的天气Web Service接口

    免费的天气Web Service接口 在android应用当中很多时候需要获取天气的信息,这里提供怎么获取天气信息: 1. http://www.ayandy.com/Service.asmx?wsd ...

  6. Web Service 一些对外公开的网络服务接口

    商业和贸易: 1.股票行情数据 WEB 服务(支持香港.深圳.上海基金.债券和股票:支持多股票同时查询) Endpoint: http://webservice.webxml.com.cn/WebSe ...

  7. web service client端调用服务器接口

    打开项目的web service client 其中wsdl URL    http://www.51testing.com/html/55/67755-848510.html 去这里面查找一些公开的 ...

  8. Web Service接口返回泛型的问题(System.InvalidCastException: 无法将类型为“System.Collections.Generic.List`1[System.String]”的对象强制转换为类型“System.String[]”)

    在使用C#写Web Service时遇到了个很奇怪的问题.返回值的类型是泛型(我用的是类似List<string>)的接口,测试时发现总是报什么无法转换为对象的错误,百思不得其解. 后来在 ...

  9. 使用wsimport和JAX-WS调用Web Service接口

    本文简单举例说明如何使用wsimport工具和JAX-WS API调用Web Service接口.此方法的优点:使用JDK自带的工具和API接口,无需依赖第三方库. JDK版本:1.8.0_141开发 ...

随机推荐

  1. synchronized关键字详解(二)

    synchronized关键字的性质 1.可重入:同一线程的外层函数获得锁之后,内层函数可直接再次获得该锁,好处:避免死锁,提升封装性 证明可重入粒度:1.同一个方法是可重入的 2.可重入不要求是同一 ...

  2. 《Java编程的逻辑》第二部分 面向对象

  3. Java类加载机制总结

    关于Java类加载机制的几个基本概念: JDK提供的基本类加载器:引导类加载器(Bootstrap Class Loader)-用于加载JDK中的核心类.扩展类加载器(Ext Class Loader ...

  4. hibernate 级联删除报更新失败的问题(org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update)

    首先hibernate级联删除的前提是,首先需要在映射文件中配置,配置多表之间的关联关系: 下面以部门表(Dept)和员工表(Emp)为例: 1.在Emp.hbm.xml映射文件中配置many-to- ...

  5. sublime之markdown快捷键

    目录 sublime 快捷键 markdown技能 sublime 快捷键 ctrl + shift + p 进入命令面板 package install 进入下载仓库 ctrl + alt + O ...

  6. BeginEditorCommand()

    BeginEditorCommand();开始把焦点给CAD CompleteEditorCommand();焦点给窗体

  7. UGUI世界坐标转换为UI本地坐标(游戏Hud的实现)

    实现世界坐标的原理是: 世界坐标和UGUI的坐标分属两个坐标系,他们之间是无法进行转换的,需要通过屏幕坐标系来进行转换(因为屏幕坐标是固定的),即先将游戏场景中的世界坐标通过游戏场景Camera转化为 ...

  8. codevs 3385 拯救Oier(一) Save Oier—first

    3385 拯救Oier(一) Save Oier—first 传送门  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 青铜 Bronze 题解       题目描述 Descr ...

  9. [pytorch学习]1.pytorch ubuntu安装

    看完了Deep Learning with Python,尝试了部分Keras的demo代码. 感觉Keras虽然容易上手,能够快速搭建出一个通用的模型,但是缺乏对底层的控制. 同时,在使用了自己编译 ...

  10. Linux常用shell命令持续总结

    1. 查看端口运行 netstat -lnp|grep 80 2. 定时任务 Crontab -e 编辑任务 Crontab -l 查看当前任务列表 /var/log/cron-* 任务日志