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中,数字或数值数据以及数学函数的使用很简单。基本来说,要处理两种数据类型:浮点数和...

php中防止恶意刷新页面的代码小结

防止恶意刷页面的原理是 要求在页面间传递一个验证字符串, 在生成页面的时候 随机产生一个字符串, 做为一个必须参数在所有连接中传递。同时将这个字符串保存在session中。 点连接或者表...

解析PHP 5.5 新特性

PHP5.5 前不久前刚刚发布,里面的新特性有什么?官方文档在这里:http://www.php.net/manual/zh/migration55.new-features.php1...

深入理解:XML与对象的序列化与反序列化

这篇文章主要讲述XML与对象的序列化与反序列化。并且会附上一些简单的序列化与反序列化方法,供大家使用。假设我们在一个Web项目中有这样两个类复制代码 代码如下:public class...

PHP框架性能测试报告

作为一个PHP开发者,而且是初创企业团队的技术开发者,选择开发框架是个很艰难的事情。 用ThinkPHP的话,招聘一个刚从培训机构出来的开发者就可以上手了,但是性能和后期代码解耦是个让人...