加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP编程:php函数重载的替代方法--伪重载详解

发布时间:2020-12-13 02:36:02 所属栏目:PHP教程 来源:网络整理
导读:《php函数重载的替代方法--伪重载详解》要点: 本文介绍了php函数重载的替代方法--伪重载详解,希望对您有用。如果有疑问,可以联系我们。 函数重载的替代方法-伪重载,下面看一个具体的实例代码. PHP实例 ? php//函数重载的替代方法-伪重载////确实,在PHP中

《php函数重载的替代方法--伪重载详解》要点:
本文介绍了php函数重载的替代方法--伪重载详解,希望对您有用。如果有疑问,可以联系我们。

函数重载的替代方法-伪重载,下面看一个具体的实例代码.
PHP实例

<? php
//函数重载的替代方法-伪重载
//
//确实,在PHP中没有函数重载这个概念,让很多时候我们无法进行一些处理,甚至有时候不得不在函数后面定义好N个参数
//在看到了func_get_arg,func_get_args,func_num_args,这三个函数的时候,你们是不是想起了什么?
function testOne ( $a ) {
 echo (' 一个参数就这样 ');
}
function testTwo ( $a,$b ){
 echo (' 两个参数的就这样 ');
}
function testThree ($a,$b,$c ) {
 echo (' 黑黑,这是三个参数的 ');
}
function test () {
 $argNum  =  func_num_args ();
  // 这一段其实可以用 $_arg = func_get_args() 来获得所有的参数,只是要用数组罢了,不方便我下面的表达,呵呵
 for ( $i  =  0 ; $i  <  $argNum ; $i ++ ) {
  $_arg_ { $i } =  func_get_arg ( $i );
 }
 switch ( $argNum ) {
  case  1 :
   testOne( $_arg_1 );
   break ;
  case  2 :
   testTwo( $_arg_1,$_arg_2 );
   break ;
  case  3 :
   testThree( $_arg_1,$_arg_2,$_arg_3 );
   break ;
  default :
   echo ( ' 这是没有参数的情况 ' );
   break ;
 }
}
test();
echo ( ' ' );
test( 1 );
echo ( ' ' );
test( 1,2 );
echo ( ' ' );
test( 1,2,3 );
// 这些只是在函数中的运用,其实最主要的还是在类中的运用
//如果这些用到类里面我就不需要担心构造函数是否有几个参数了,不是吗?
class test {
 var  $a  =  0 ;
 var  $b  =  0 ;
 function test () {
  $argNum  =  func_num_args ();
  $_arg  =  func_get_args ();
  switch ($argNum ) {
   case  1 :
   $this -> test1( $_arg [ 0 ] );
   break ;
  case  2 :
   $this -> test2( $_arg [ 0 ],$_arg [ 1 ]);
   break ;
  default :
   $this -> a = 0 ;
   $this -> b = 1 ;
   break ;
  }
 }
 function test1 ($a) {
  $this -> a =  $a ;
 }
 function test2 ($a,$b) {
  $this -> a =  $a ;
  $this -> b =  $b ;
 }
}
?>

以上所述就是本文的全部内容了,希望大家能够喜欢.PHP实例

《php函数重载的替代方法--伪重载详解》是否对您有启发,欢迎查看更多与《php函数重载的替代方法--伪重载详解》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读