今天给各位分享自己的网站php怎么做api的知识,其中也会对用php做网站进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录:
php网站怎么提供api
以下是个人理解。
API就是应用程序接口,是预先自定义的函数,提供一些功能而不用去了解这个功能是如何实现的。
比如说你对你的网站会员开放一个接口,我们称之为发消息接口,
使用方法是sendmsg($from,$to,$msg)
那么当别人引用你的接口文件,(如api.php)之后,可以直接使用这个方法发消息。而不需要去管这个消息是如何发出去的。但是作为开发者,你要在api.php中预先自定义好这个sendmsg函数。
当然,你可以自定义多种多样的函数,比如会员登录,获取热门帖子……等等。
使用API的好处就是代码的重用,重复使用。比如你的API中有一个接口 “增加积分”。
那么你不但可以在发帖完毕调用它增加积分,还可以在用户的任何动作添加增加积分的功能,比如登录加5分,发帖加3分,贴图加10分。
大概就是这样了,完全手打!
php如何开发API接口
进入php源程序目录中的ext目录中,这里存放着各个扩展模块的源代码,选择你需要的模块,比如curl模块:cd curl
执行phpize生成编译文件,phpize在PHP安装目录的bin目录下
/usr/local/php5/bin/phpize
运行时,可能会报错:Cannot find autoconf. Please check your autoconf installation and
the $PHP_AUTOCONF
environment variable is set correctly and then rerun this
script.,需要安装autoconf:
yum install autoconf(RedHat或者CentOS)、apt-get install
autoconf(Ubuntu Linux)
/usr/local/php5/bin/php -v
执行这个命令时,php会去检查配置文件是否正确,如果有配置错误,
这里会报错,可以根据错误信息去排查!
如何使用PHP的CodeIgniter框架来编写API接口
1.将解压的框架包放到的你的php环境的www/api目录下:这里建立api目录作为测试项目目录。并运行localhost/api/index.php,就可以看到环境界面了
2.在对应的目录下修改控制器中的方法:默认在application/controller/welcome.php文件中的
3.修改welcome.php中的index方法,看到的欢迎页面从这里加载的
4.开始写api接口吧,写api接口前要链接我们的数据库,配置数据库信息在application/config/database.php中
5.连接配置好的数据库,回到我们的welcome.php中
6.去github官网中下载codeIgniter支持的api接口包
7.解压文件包,并将对应的文件放到指定的目录
8.修改控制器的方法名,把index该为index_get。
9.在浏览器中运行接口,根据不同的参数返回不同的数据。
获取的是json数据
localhost/api/index/php?username=张三format=json
获取的是xml数据
localhost/api/index/php?username=张三format=xml
怎么用PHP开发API供其他客户端调用?
一、接口的分类:
1、URL类型的接口
URL
路由带参数式的接口!这个很好做!只要有过Web开发经验的人都能完成!这种接口数据不够隐蔽性,可以直接在浏览其中看到,如支付宝的交易请求URL。需
要加一个MD5签名,和服务器端的再次向支付宝服务器发送验证!虽然soap方式传递的数据隐蔽性很好!但为了数据安全,难免也需要进行数据签名。
2、SOAP类型的接口
无关编程语言、无关平台、扩展性很好,要实现一个SOAP 型的接口,有两种方式:一种有WSDL文件方式、一中无WSDL文件方式!
对
于热爱研究型的人来说,使用第一种方式可以让你清楚的了解PHP是怎么创建了一个Web
Service!但第一种对于新手来说,创建一个XML格式的WSDL文件,是比较难的,这你的先了解熟悉什么是XML!学会XML语法!但对于一个急于
解决问题的人来说!没有这么多的时间去熟悉!所以这是件烦恼的事!
二、PHP环境设置
先配置下PHP的soap环境支持:
找到php.ini文件
;extension=php_soap.dll
删除掉";" ,重启apache服务器
为了便于测试,需要关于wsdl缓存
方式1:
配置文件:php.ini 选项 soap.wsdl_cache_enabled 设置为0
方式2:
代码头添加:ini_set('soap.wsdl_cache_enabled', "0"); //关闭wsdl缓存
三、有WSDL文件方式创建
在
这里先介绍标准的webservice。 那么如何创建wsdl呢?对于PHP来说这确实是件很不容易的事情,有人说用zend
studio创建很方便,这是一种方法。但对于那些不喜欢用zend studio的人来说,会觉得创建一个web service还要安装zend
studio,太强人所难了。
在这里介绍一个简单的方法,到网上下载SoapDiscovery.class.php类,里面有个公用方法:getWSDL,这个方法末尾是用的 return,那么,你修改一下这个方法:
//return sprintf('%s%s%s%s%s%s', $headerWSDL, $portTypeWSDL, $bindingWSDL, $serviceWSDL, $messageWSDL, '/definitions');
//生成wsdl文件,将上面的return注释
$fso = fopen($this-class_name . ".wsdl" , "w");
fwrite($fso,
sprintf('%s%s%s%s%s%s', $headerWSDL, $portTypeWSDL, $bindingWSDL,
$serviceWSDL, $messageWSDL, '/definitions'));
现在生成wsdl的类有了,SoapDiscovery.class.php(源码在最末尾)。
再准备一个提供服务的Service.php类文件或者函数就可以创建wsdl了!
关于自己的网站php怎么做api和用php做网站的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。