php如何调用接口
❶ php怎样通过SoapClient调用webservice接口
<?php
header("Content-Type:text/html;charset=gb2312");
/*
*指定WebService路径并初始化一个WebService客户端
*/
$ws="http://www.webservicex.net/globalweather.asmx?wsdl";//webservice服务的地址
$client=newSoapClient($ws);
/*
*获取SoapClient对象引用的服务所提供的所有方法
*/
echo("SOAP服务器提供的开放函数:");
echo('<pre>');
var_mp($client->__getFunctions());//获取服务器上提供的方法
echo('</pre>');
echo("SOAP服务器提供的Type:");
echo('<pre>');
var_mp($client->__getTypes());//获取服务器上数据类型
echo('</pre>');
echo("执行GetGUIDNode的结果:");
$result=$client->getWeather(array('CityName'=>'zhengzhou','CountryName'=>'china'));//查询中国郑州的天气,返回的是一个结构体
echo$result->GetWeatherResult;//显示结果
?>
❷ 我有移动提供的短信接口,请问怎么用php调用这些接口发送短信呢
移动的接口是什么风格的?是soap的还是自定义的?
调用自定义接口通常有以下步骤:
1、阅读接口文档
2、数据接口一般会提供一些参数。如果是GET接口,请将参数拼接在地址的后面(推荐使用
http_build_query)。如果是POST接口,看我的示例代码。
3、请求数据
4、解析返回的内容,判断调用是否成功。一般返回的内容有xml和json格式。
给你一个CURL调用POST接口的例子:
<?php
$ch=curl_init('省略接口地址,防止屏蔽');
//以下选项设为true,否则接口返回的内容会直接打印在页面上
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
//连接超时,一定要设置
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,5);
//连接成功后,请求超时,一定要设置
curl_setopt($ch,CURLOPT_TIMEOUT,5);
//使用POST请求
curl_setopt($ch,CURLOPT_POST,1);
//将参数POST过去,$post_data是你的参数组成的关联数组
curl_setopt($ch,CURLOPT_POSTFIELDS,$post_data);
//提交请求,得到反馈
$response=curl_exec($ch);
//解析反馈的内容,略
如果是SOAP风格的,请查阅PHP文档SoapClient类的用法。因为Soap规范不统一,使用其他语言实现的Soap可能和PHP不兼容。
以前我使用过移动梦网的接口(不是移动的接口),它提供两种风格的API。它的Soap就和PHP不兼容。所以我选择了自定义风格的API。
❸ PHP的预定义接口都有哪些,都是这么使用的
接口是为解决PHP中无法进行多重继承的问题而设置的,只声明API,而没有实现API,放在实现的类中去完成这个API的具体实现。
接口的声明关键字为interface,如下代码就是声明一个接口
interface IExampleInterface{
function myfunction();
}
如下代码使用这个接口
class myClass implements IExampleInterface{
function myfunction(){
echo "myfunction is called";
}
}
也可以使用多个接口
class myClass implements IExampleInterface,AnotherIExampleInterface{
//code
}
必须将接口中的myfunction函数进行实现,否则会提示错误
此外,instanceof操作符,用来判断某个对象是否实现了某个特定的接口
$a = myClass();
$flag = $a instanceof IExampleInterface;
echo $flag;将输出1,否则为0~
还有不明白的可以发消息给我
❹ PHP怎么做银联的支付接口调用
PHP做银联支付接口调用问题
//在工商支付接口之前要找到工行提供的接口文件级dll文件
//将订单签名数据公钥加密提供给工行指定页面
//组织要签名的数据串
$src="ICBC_PERBANK_B2C1.0.0.0".$infomer["merid"].$infomer["meracct"].$returnaddress."HS".$ddnumber.$amount."0010".$nowtime."0";
$com=new com('ICBCEBANKUTIL.B2CUtil');
$rc=$com->init("c:\WINDOWS\user.crt","c:\WINDOWS\user.crt","c:\WINDOWS\user.key","11111111");
$ssrc=$com->signC($src, strlen($src)); //订单签名数据
$rc=$com->verifySignC($src,strlen($src), $ssrc, strlen($ssrc));
$cert=$com->getCert(1); //商城证书公钥
//将商户证书存储到c:\WINDOWS目录下,然后创建form表单,将指定的数据提交到工行指定的网页中
<!--支付宝支付的接口操作,提交的数据-->
<td width="100"><a href="<{$link}>"><img src="images/sy_19.gif" width="90" height="25" border="0"></a></td>
<!--——————————————————-->
<!--工行支付的接口操作,提交的数据-->
<form action="https://mybank.icbc.com.cn/" method="post" name="form_bank">
<input name="interfaceName" type="hidden" value="ICBC_PERBANK_B2C"/>
<input name="interfaceVersion" type="hidden" value="1.0.0.0"/>
<input name="orderid" type="hidden" value="<{$ddnumber}>"/>
<input name="amount" type="hidden" value="<{$amount}>"/>
<input name="curType" type="hidden" value="001"/>
<input name="merID" type="hidden" value="<{$merid}>"/>
<input name="merAcct" type="hidden" value="<{$meracct}>"/>
<input name="verifyJoinFlag" type="hidden" value="0"/>
<input name="notifyType" type="hidden" value="HS"/>
<input name="merURL" type="hidden" value="<{$returnaddress}>"/>
<input name="resultType" type="hidden" value="0"/>
<input name="orderDate" type="hidden" value="<{$nowtime}>"/>
<input name="merSignMsg" type="hidden" value="<{$ssrc}>" />
<input name="merCert" type="hidden" value="<{$cert}>" />
</form>
❺ php调用java接口,具体步骤,要可以在win10和linux上使用的,,高额悬赏!
说个思路,采纳与否自己看:
用socket进行通讯:
使用现有协议你可以依托,http实现本地访问的接口,也就是127.0.0.1+http端口就可以访问。
或者
自己定义数据传输规则,依托的是java的纯soket接口。
或者
webservice,需要数据封装,效率还不如http直接调用。
以上方式实现那度都不大,php100%有网络请求或webservice的函数,效率问题你也无须担心,127.0.0.1通讯,数据连网卡都不会倒,直接转给别的进程,部署在不同的机器,数据是需要经过网络的。
另外一种方式:
远程过程调用,这快能否跨语言通讯不想,但rpc是行业标准,如果严格遵循标准,理论上可以实现。php有没有对应的调用函数,不清楚。
我熟悉java,php了解一丁点。
以上所有方式,你写好后都是通用接口想部署在什么平台上都行。
❻ php怎样调用微信接口生成大尺寸二维码
PHP QR Code是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示demo,查看地址:http://phpqrcode.sourceforge.net/。
下载官网提供的类库后,只需要使用phpqrcode.php就可以生成二维码了,当然您的PHP环境必须开启支持GD2。phpqrcode.php提供了一个关键的png()方法,其中参数$text表示生成二位的的信息文本;参数$outfile表示是否输出二维码图片文件,默认否;参数$level表示容错率,也就是有被覆盖的区域还能识别,分别是L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%);参数$size表示生成图片大小,默认是3;参数$margin表示二维码周围边框空白区域间距值;参数$saveandprint表示是否保存二维码并显示。
public static function png($text, $outfile=false, $level=QR_ECLEVEL_L, $size=3, $margin=4,
$saveandprint=false)
{
$enc = QRencode::factory($level, $size, $margin);
return $enc->encodePNG($text, $outfile, $saveandprint=false);
}
调用PHP QR Code非常简单,如下代码即可生成一张内容为"http://www.helloweba.com"的二维码.
include 'phpqrcode.php';
QRcode::png('http://www.helloweba.com');
❼ 如何使用PHP调用API接口实现天气查询功能
最近在做微信公众平台测试时,想在里面子菜单上添加查询未来几天(包括今天)天气的功能,就查找了下好用的天气预报查询接口API,使用比较多的有:国家气象局天气接口、新浪天气预报接口、网络天气预报接口、google天气接口、Yahoo天气接口等等,我使用的是网络提供的免费天气查询接口API,下面与大家分享下...
1、查询方式:
网络提供的是根据纬度和城市名查询天气情况
2、接口事例:
❽ php如何调用api接口,主要是php调用联通,移动api进行短信的发送
你没法调移动。联通api的,如果要进行短信发送,可以去找短信接口,一般去运营商购买,然后他们提供api。然后用php对接即可,很简单,比如下面使用的就是某家的api发送:
$this->content = “发送内容”;
$this->name = "短信账号";
$this->pwd= "短信密码";
$this->mobile = "发送的手机号";
$argv = array(
'name'=>$this->name, //必填参数。用户账号
'pwd'=>$this->pwd, //必填参数。(web平台:基本资料中的接口密码)
'content'=>$this->content, //必填参数。发送内容(1-500 个汉字)UTF-8编码
'mobile'=>$this->mobile, //必填参数。手机号码。多个以英文逗号隔开
'stime'=>'', //可选参数。发送时间,填写时已填写的时间发送,不填时为当前时间发送
'sign'=>$this->sign, //必填参数。用户签名。
'type'=>$this->type, //必填参数。固定值 pt
'extno'=>$this->extno //可选参数,扩展码,用户定义扩展码,只能为数字
);
//构造要post的字符串
foreach ($argv as $key=>$value) {
if ($flag!=0) {
$params .= "&";
$flag = 1;
}
$params.= $key."=";
$params.= urlencode($value);
$flag = 1;
}
$url = "http://xxxxxxx.com?".$params; //提交的url
$resultUrl = file_get_contents($url);//获取发送状态