PHP小技巧之函数重载

yipeiwu_com7年前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 工厂模式使用方法

基本的工厂类 复制代码 代码如下: class MyObject{ //对象将从工厂返回 } class MyFactory{ public static function factor...

深入PHP nl2br()格式化输出的详解

nl2br()函数可将字符串中的换行符转成HTML的换行符号复制代码 代码如下:<?php $str = "最近几天一直在下雨,难过死了 ,球也打不成,鞋子也湿透了。"; echo...

PHPWind与Discuz截取字符函数substrs与cutstr性能比较

PHPWind与Discuz截取字符函数substrs与cutstr性能比较

以掌握使用Benchmark_Iterate类工具的方法。 目录 一,什么是PEAR与Benchmark 二,性能比较代码准备与调试 三,性能比较测试结果 四,性能比较测试总结 五,附性...

PHP写的加密函数,支持私人密钥(详细介绍)

在开发PHP系统时,会员部分往往是一个必不可少的模块,而密码的处理又是不得不面对的问题,PHP 的 Mcrypt 加密库又需要额外设置,很多人都是直接使用md5()函数加密,这个方法的确...

Uncaught exception com_exception with message Failed to create COM object

Uncaught exception com_exception with message Failed to create COM object

在PHP中调用IE使用如下代码: 复制代码 代码如下: browser = new COM("InternetExplorer.Application"); 无法正常调用,直接报错:...