频道栏目
首页 > 资讯 > 面向对象 > 正文

在PHP中实现重载构造函数的方法

16-01-07        来源:[db:作者]  
收藏   我要投稿

重载(与覆盖不同)在PHP中不支持,在OOP中,你可以重载一个方法来实现两个或重多的方法具有相同的名字,但是有不同数量或类型的参数(这要看语言),PHP 是一种松散类型的语言,所以通过类型重载不起作用,然而通过参数的个数不同来重载也不起作用。

有时在OOP中重载构造函数非常好,这样你可以通过不同的方法创建对象(传递不同数量的参数)。在PHP中实现它的技巧是:

  1. classMyclass{ functionMyclass(){
  2. $name="Myclass".func_num_args(); $this->$name();
  3. //注重$this->$name()一般是错误的,但是在这里$name是一个将被调用方法的名字 }
  4. functionMyclass1($x){ code;
  5. } functionMyclass2($x,$y){
  6. code; }
  7. }

通过在类中的额外的处理,使用这个类对用户是透明的:

  1. $obj1=newMyclass('1');//将调用Myclass1 $obj2=newMyclass('1','2');//将调用Myclass2

有时这个非常好用。

相关TAG标签
上一篇:PHP中的面向对象和面向过程
下一篇:PHP中关键字与魔术方法介绍
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站