您的位置:

php接口开发简单实例,php接口开发教程

本文目录一览:

什么是API接口,PHP开发API接口的例子

就是php只处理数据,而不直接输出html

把视图层都交给js去完成。

比如:

//获取数据

$id=$_GET['id'];

if($id){

//支数据库取数据

$sql="select*from table where id='".$id."'";

    $re=.....;

echo json_encode($re);//返回json格式数据给前端处理

}

//修改数据

if($id$_GET['edit']){

////数据库操作

echo "修改成功";

}

php如何开发API接口

比如一个自定义函数:function test(){echo ‘hello world’;}就可以叫做 api。api 既可以是单个的函数,也可以是封装在类里的方法,当然它们也是程序代码。开发一个 api 的流程可以很简单,也可以很复杂,视具体的编程任务而决定,并没有特定的规则。比如,你需要为自己建立一个常用的函数库,命名为 my.lib.php然后把你自己编写的自定义函数,全部写在这个文件里面,那么,你就拥有了自己的api。开发的时候,只需要引入 my.lib.php,你就可以调用自己的 api 了。这是一个比较简单的例子。稍微复杂一点的,你可以把函数封装在类里面,方便继承和重用,还可以根据函数名称做一些程序设计,这个一句话说不清楚,给一个简单的例子吧:class mylib{function showmy(){echo ‘这是我的一个类方法’;}}调用的时候,先要实例化类,然后再调用方法。再复杂一点的就是使用类接口,区别就是接口里面定义的只是方法原型,而你需要通过具体的类来实现接口中的函数,具体请参考 php 手册

有没有开发php接口实例?

你就直接写个类,然后写方法,然后查询对应的数据,返回JSON格式就行,当然这个类的方法能通过浏览器访问,别人调用也是这样来调用的

用php写个接口。

PHP 接口:

接口

使用接口(interface),你可以指定某个类必须实现哪些方法,但不需要定义这些方法的具体内容。

我们可以通过interface来定义一个接口,就像定义一个标准的类一样,但其中定义所有的方法都是空的。

接口中定义的所有方法都必须是public,这是接口的特性。

实现

要实现一个接口,可以使用implements操作符。类中必须实现接口中定义的所有方法,否则 会报一个fatal错误。如果要实现多个接口,可以用逗号来分隔多个接口的名称。

Note:

实现多个接口时,接口中的方法不能有重名。

Note:

接口也可以继承,通过使用extends操作符。

常量

接口中也可以定义常量。接口常量和类常量的使用完全相同。 它们都是定值,不能被子类或子接口修改。

怎么用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接口开发教程

PHP与大多数面向对象编程语言一样,不支持多重继承.也就是说每个类只能继承一个父类.为了解决这个问题,PHP引入了接口,接口的思想是指定了一个实现了该接口的类必须实现的一系列方法.接口是一种特殊的抽象类,抽象类又是一种特殊的类,所以接口也是一种特殊的类,为什么说接口是一种特殊的抽象类呢?如果一个抽象类里面的所有的方法都是抽象方法,那么我们就换一种声明方法使用“接口“;也就是说接口里面所有的方法必须都是声明为抽象方法,另外接口里面不能声明变量(但可声明常量constant),而且接口里面所有的成员都是public权限的。所以子类在实现的时候也一定要使用public权限实限。

声明一个类的时候我们使用的关键字是”class”,而接口一种特殊的类,使用的关键字是“interface”;

类的定义: class 类名{ … } ,接口的声明:interface 接口名{ …}

代码

代码

?php

//定义一个接口使用interface关键字,“One”为接口名称

interface One

{

//定义一个常量

const constant = 'constant value';

//定义了一个抽象方法”fun1”

public function fun1();

//定义了抽象方法”fun2”

public function fun2();

}

?

上例中定义了一个接口”one”,里面声明了两个抽象方法“fun1”和”fun2”,因为接口里面所有的方法都是抽象方法,所以在声明抽象方法的时候就不用像抽象类那样使用”abstract”这个关键字了,默认的已经加上这个关键字,另外在接口里边的”public”这个访问权限也可以去掉,因为默认就是public的,因为接口里所有成员都要是公有的,所在对于接口里面的成员我们就不能使用“private”的和”protected”的权限了,都要用public或是默认的。另外在接口里面我们也声明了一个常量“constant“, 因为在接口里面不能用变量成员,所以我们要使用const这个关键字声明。

因为接口是一种特殊的抽象类,里面所有的方法都是抽象方法,所以接口也不能产生实例对象; 它也做为一种规范,所有抽象方法需要子类去实现。

我们可以使用”extends”关键字让一个接口去继承另一个接口:

?php

//使用”extends”继承另外一个接口

interface Two extends One

{

function fun3();

function fun4();

}

?

而我们定义一接口的子类去实现接口中全部抽象方法使用的关键字是”implements”,而不是我们前面所说的”extends”;

代码

?php

//使用“implements”这个关键字去实现接口中的抽象方法 接口和类之间

class Three implements One

{

function fun1()

{

}

function fun2()

{

}

}

//实现了全部方法,我们去可以使用子类去实例化对象了

$three=new Three();

?

我们也可以使用抽象类,去实现接口中的部分抽象方法,但要想实例化对象,这个抽象类还要有子类把它所有的抽象方法都实现才行;

在前面我们说过,PHP是单继承的,一个类只能有一父类,但是一个类可以实现多个接口,就相当于一个类要遵守多个规范,就像我们不仅要遵守国家的法律,如果是在学校的话,还要遵守学校的校规一样;

?php

//使用implements实现多个接口

class Four implemtns 接口一, 接口二, ….

{

//必须把所有接口中的方法都要实现才可以实例化对象。

}

?

PHP中不仅一个类可以实现多个接口,也可以在继承一个类的同时实现多个接口, 一定要先继承类再去实现接口;

?php

//使用extends继承一个类,使用implements实现多个接口

class Four extends 类名一 implemtns 接口一, 接口二, ….

{

//所有接口中的方法都要实现才可以实例化对象

………

}

?