php 函数重载的常用方法

100人浏览   2024-08-31 08:04:18

广东IT优就业

本文讲述PHP实现重载的常用方法,供大家参考,具体如下:

php是弱类型语言,并没有像JAVA这种强类型语言一样有重载。重载一般来说就是拥有相同的函数名或方法名,但是参数列表却不同(包括参数个数和参数类型)

从这个定义来说,php是没有重载的,因为php不允许存在相同的函数名,但是没有并不意味着不能实现。

php有四种机制可以实现重载:(下面用java进行对比)

1. 弱类型,无需定义变量类型

先举一个JAVA重载的例子:

上面的代码如果用php语言实现:

2. 可选参数,允许变量设置默认值

JAVA重载例子:

用php可选参数特性实现:

可以看到同样的功能,但是php这种弱类型语言实现起来更简单。

3. 可变参数

主要用到以下两个函数:

(1)func_num_args() 返回函数的参数个数

(2)func_get_args() 返回一个包含函数参数列表的数组

具体实现方式:

4. 使用魔术方法 __call()

public mixed __call ( string $name , array $arguments )在对象中调用一个不可访问的方法时,__call()会被自动调用。$name参数是要调用的方法名称 $argument参数是被调用方法的参数数组。

具体实现方式类似上面的第三要点:

希望本文所述对大家PHP程序设计有所帮助。

作者:mayday526

出处:
http://blog.csdn.net/whd526/article/details/70239791


相关推荐