PHP接口:它们在实践中如何可用?

thw*_*hwd 11 php coding-style interface

我首先要说的是我知道PHP接口如何工作以及如何"使用"它们.

我的问题是; 它们如何在现实生活中应用?

我已经编写PHP超过3年了,从来没有觉得需要一个界面.我正在为更好的实践而不是为特定目的编写接口.

Mic*_*ski 11

我将提供一个示例,我在自己的实际经验中使用了接口.

当您需要定义类似插件架构的东西时,接口非常有用.假设您的应用程序接受身份验证插件,允许您的最终用户实现者与他们自己的内部auth基础结构集成(LDAP,Shibboleth,一些自定义身份验证数据库,等等).为了使插件兼容,它必须实现以下方法:

validate_user()
start_user_session()
logout_user()
get_user_details()
Run Code Online (Sandbox Code Playgroud)

如果在接口中定义,则类实现接口,确保存在必要的方法以与插件体系结构兼容.

遗憾的是,PHP不强制执行返回类型的接口方法,因此您必须注意记录方法的预期返回功能.