PHP小技巧之函数重载

yipeiwu_com6年前PHP代码库

1.可以使用func_get_args()和func_num_args()这两个函数实现函数的重载!!

PHP代码:

复制代码 代码如下:

function rewrite() {  
            $args = func_get_args();  
            if(func_num_args() == 1) {  
                    func1($args[0]);  
            } else if(func_num_args() == 2) {  
                    func2($args[0], $args[1]);  
            }  
    }  
    function func1($arg) {  
            echo $arg;  
    }  
    function func2($arg1, $arg2) {  
            echo $arg1, ' ', $arg2;  
    }  
    rewrite('PHP'); //调用func1  
    rewrite('PHP','China'); //调用func2

2.使用默认值,从而根据输入,得到自己想要的结果:

复制代码 代码如下:

function test($name="小李",$age="23"){ 
        echo $name."  ".$age; 
        } 

    test(); 
    echo "<br/>"; 
    test("a"); 
    echo "<br/>"; 
    test("a","b");

相关文章

PHP 实现等比压缩图片尺寸和大小实例代码

废话不多说了,直接给大家贴php等比压缩图片大小的相关代码了,具体代码如下所示: <?php $im = imagecreatefromjpeg('D:phpplac...

php中类和对象:静态属性、静态方法

在PHP中,使用关键字 static 修饰成员属性和成员方法被称为静态属性和静态方法。静态属性和静态方法不需要在类被实例化的情况下可以直接使用。 静态属性 与普通的成员属性不同,静态属性...

php实现推荐功能的简单实例

利用similar_text将这些文章标题同原文章标题做对比,按标题的相似程度重新排列标题,就得到了与原文章相似的文章列表。 <?php $demo_title= "...

Discuz 6.0+ 批量注册用户名

1.将adduser.php复制到discuz根目录下; /--adduser.php内容如下--/ <? php require_once './include/common.i...

JavaScript创建命名空间的5种写法

在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量也不是按照你想像中的顺序来的,可以看看下面的例子: 复制代码 代码如下: var sayHello = functi...