PHP的interface接口使用
程序员文章站
2022-05-06 20:37:34
...
在我们在做网站或者是项目的时候,有没有用到interface?用这个有什么要注意的?
举个栗子,写了个使用mysql扩展函数封装的一个数据库操作类DBMySQL,写了几个常用的方法:getAll,getOne,delById,delAll,update,save等等,
现在mysql扩展被官网彻底抛弃了,我让同事帮我使用mysqli或者pdo-mysql扩展来封装一个数据库操作类,
可能他的风格跟我原来的风格不一样,他可能喜欢叫Get_All,Get_One,等等,又或者,他觉得不需要delById了,也不需要delAll了,统一一个Del方法。
举个栗子,写了个使用mysql扩展函数封装的一个数据库操作类DBMySQL,写了几个常用的方法:getAll,getOne,delById,delAll,update,save等等,
现在mysql扩展被官网彻底抛弃了,我让同事帮我使用mysqli或者pdo-mysql扩展来封装一个数据库操作类,
可能他的风格跟我原来的风格不一样,他可能喜欢叫Get_All,Get_One,等等,又或者,他觉得不需要delById了,也不需要delAll了,统一一个Del方法。
这样,要使用新的操作类,那么项目里使用了我原来的操作类的所有地方,都要修改。
再举一个情况,我觉得mysqli好用,同事A觉得PDO-mysql好用,写模块的同事C觉得随便用哪个都可以。但是,总得不可能让同事C写一套用mysqli方法的,再写一套pdo-mysql方法的,我们可以用mysqli的方法封闭一个数据库操作类,用pdo-mysql的方法也封闭一个数据库操作类,然后规定我们两个操作类实现同一功能的方法名和参数相同,那么同事C就可以专心写他的模块和逻辑了。
那么,怎样规定我和同事A分别写的数据库操作类的方法一致呢?interface(接口)就是这么用的了。它规定所有实现它的类,都必须有它规定好的方法,少一个都不行。这样,只要我们写好interface,规定好方法,同事C就可以以这个interface为参考,调用这个interface的方法就行了。
推荐阅读
-
php中的路径问题与set_include_path使用介绍
-
[PHP]如何在百度(BAE)和新浪(SAE)的云平台使用PHP连接MySQL并返
-
PHP读取PDF内容(LINUX下XPDF的配置和使用)_PHP教程
-
使用xdebug调试PHP 找出PHP程序的瓶颈
-
使用php 获取时间今天明天昨天时间戳的详解_PHP教程
-
在PHP3中实现SESSION的功能(附、COOKIE函数库的使用:test_cookie.php3
-
php版微信公众号接口实现发红包的方法
-
详解PHP中的mb_detect_encoding函数使用方法
-
使用nginx服务器时,php获取用户ip的方法
-
PHP不使用递归的无限级分类