摘要:本文主要向大家介绍了PHP语言之设计模式—适配器模式,通过具体的实例向大家展示,希望对大家学习php语言有所帮助。
本文主要向大家介绍了PHP语言之设计模式—适配器模式,通过具体的实例向大家展示,希望对大家学习php语言有所帮助。
1、什么是适配器模式?
适配器设计模式只是将某个对象的接口适配为另外一个对象所期望的接口
2、实例讲解
[php] view plain copy print?
1. <?php
2. /*
3. * 适配器设计模式
4. * --------------
5. * @author liuxinming
6. */
7. /*早先设计的一个类*/
8. class UserInfo{
9. /**
10. * 根据用户UID获取用户信息
11. * @param inti $uid 用户ID
12. * @return array $userinfo 返回用户信息
13. */
14. public function getUserInfo($uid){
15. //相关处理
16. //DB层,从数据库查询用户信息
17. $userinfo=array(
18. 'uid'=>1,
19. 'username'=>'liuxinming',
20. );
21. return $userinfo;
22. }
23. }
24. /**
25. * 适配器类,目的是在新需求增加的情况 不修改以前公共接口类,通过对适配器UserInfoIntegral用户积分类的扩展来满足新需求
26. */
27. class UserInfoIntegral extends UserInfo{
28. public function getUserIntegral($uid){
29. $integral=array(
30. 'integral1'=>2,
31. 'integral2'=>3,
32. );
33. return $integral;
34. }
35. public function getUser($uid){
36. $userall=array(
37. 'userinfo'=>$this->getUserInfo($uid),
38. 'userintegral'=>$this->getUserIntegral($uid),
39. );
40. return $userall;
41. }
42. }
43. /**
44. * 获取用户信息客户端类
45. */
46. class MyObject{
47. public function write($uid){
48. $UserInfoApp= new UserInfoIntegral();
49. return $UserInfoApp->getUser($uid);
50. }
51. }
52.
53. $l=new MyObject();
54. print_r($l->write(1));
55. ?>
运行后输出如下:
Array (
[userinfo] => Array (
[uid] => 1
[username] => liuxinming
)
[userintegral] => Array (
[integral1] => 2
[integral2] => 3
)
)
以上就介绍了PHP的相关知识,希望对PHP有兴趣的朋友有所帮助。了解更多内容,请关注职坐标编程语言PHP频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号