首页 > 后端开发 > php教程 > PHP实现函数重载_PHP教程

PHP实现函数重载_PHP教程

WBOY
发布: 2016-07-13 10:29:18
原创
1137 人浏览过

本来php?name=PHP">PHP是不支持函数重载的!

php 作为一种弱类型语言,本身不能像强类型如java ,c++那样,直接的实现重载。不过可以通过一些方法,间接的实现重载。

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

PHP代码:

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

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

 <span>function</span> test(<span>$name</span>="小李",<span>$age</span>="23"<span>){  
        </span><span>echo</span> <span>$name</span>."  ".<span>$age</span><span>;  
        }  
  
    test();  
    </span><span>echo</span> "<br/>"<span>;  
    test(</span>"a"<span>);  
    </span><span>echo</span> "<br/>"<span>;  
    test(</span>"a","b"); 
登录后复制

 

 

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/777735.htmlTechArticle本来 php?name=PHP"PHP 是不支持 函数 重载的! php 作为一种弱类型语言,本身不能像强类型如java ,c++那样,直接的实现重载。不过可以通过一些...
相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板