, 接口interface是一个规定,给人继承用的东西,有点像抽象类。接口定义了实现某种服务的一般规范,声明了所需的函数和常量,但不指定如何实现。之所以不给出实现的细节,是因为不同的实体可能需要用不同的方式来实现公共的方法定义。关键是要建立必须实现的一组一般原则,只有满足了这些原则才能说实现了这个接口。下面就由 新网小编和大家讲一讲 php接口是指什么。
一、PHP接口(interface)的特点 :
1、接口的方法必须是公开的。
2、接口的方法默认是抽象的,所以不在方法名前面加abstract。
3、接口可以定义常量,但不能定义成员属性,常量的定义和用法和类中常量一样。
4、类可以实现多个接口(相当于把多个功能集于一身,如手机实现了小灵通、MP3、MP4的功能)
5、接口也可以继承接口。
PHP同大多数的面向对象语言一样,并不支持多重继承。如果需要实现多重继承功能,在PHP中,可以通过接口,它是PHP解决多重继承问题的方法,在php5.4版本之后有个类的新特性trait。
二、php哪个框架适合做api?
从问题本身来说,是否适合做API和框架关系不大。
框架解决的问题是提供一个优秀的
程序架构,提高团队协作效率,提高
代码可维护性等等。
实际上,选择框架还应该从更多的角度去衡量,比如是否易学,有没有足够强大的社区支持等等很多方面。其实我自己感觉最重要的还是个人喜好,有时候你喜欢一个东西可能说不出来太具体的理由,就是喜欢。
另一方面,开发 JSON 格式的 API,和开发以 HTML 为格式的网页没有本质区别,只不过是把输出由 HTML 改成 JSON 而已。所以最重要的还是业务逻辑是什么,而不是开发的是 API 还是什么其他东西。
三、PHP参考框架
(一)CodeIgniter的优点
1. 配置简单,全部的配置使用 PHP 脚本来配置,执行效率高;具有基本的路由功能,能够进行一定程度的路由;具有初步的Layout功能,能够制作一定程度的界面外观; 数据库层封装的不错,具有基本的MVC功能。
2. 快速简洁,代码不多,执行性能高,PHP框架简单, 容易上手,学习成本低,文档详细;自带了很多简单好用的library,框架适合小型应用。[7]
(二)CodeIgniter 缺点
1. 把Model层简单的理解为数据库操作。
2. PHP 框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要。[7]
(三)CakePHP 的优点
1. CakePHP 是最类似于RoR的 PHP 框架,包括设计方式,数据库操作的Active Record方式;设计层面很优雅,没有自带多余的 library,所有的功能都是纯粹的框架,执行效率还不错;数据库层的hasOne,hasMany 功能很强大,对于复杂业务处理比较合适;路由功能,配置功能还不错;自动构建脚手架(scaffold)很强大;适合中型应用;基本实现过了MVC每一层; 具有自动操作命令行脚本功能。
2. 文档比较全,在国内
推广的比较成功,大部分人都知道CakePHP,学习成本中等。[7]
(四)CakePHP 的缺点
1. CakePHP非常严重的问题是把Model理解为数据库层操作,严重影响了除了数据库之外的操作能力
2. CakePHP的cache功能略显薄弱,配置功能稍嫌弱;CakePHP不适合大型应用,只适合中型应用,小型应用来说略微的学习成本高了点。
在 PHP 中,所有的变量都是页面级的,无论是全局变量, 还是类的静态成员,都会在页面执行完毕后被清空。设计缺陷,缺少关注PHP被称作是不透明的语言,因为没有堆栈追踪,各种脆弱的输入。没有一个明确的设计哲学。早期的PHP受到Perl的影响,带有out参数的标准库又是有C语言引入,面向对象的部分又是从C++和Java学来的。小伙伴们要想获得更多php接口的内容,请关注新网!