国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

php函數重載-的替代方法

2019-11-02 15:22:07
字體:
來源:轉載
供稿:網友

   對于弱類型語言來說,PHP函數重載,并不像一般的OOP那樣。而弱類型本來就不區分,所以無法通過這些來實現。但是,可以通過下面的方法來實現簡單的偽重載吧。

  函數重載的替代方法-偽重載,下面看一個具體的實例代碼。

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 <? 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 ] , $_a
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三穗县| 庆安县| 车致| 酉阳| 凉山| 宜章县| 大足县| 汤阴县| 原平市| 泰来县| 高雄市| 安丘市| 会东县| 会理县| 博湖县| 彭阳县| 西贡区| 平安县| 综艺| 芦山县| 扬中市| SHOW| 太保市| 广汉市| 罗山县| 宁蒗| 从化市| 全椒县| 五台县| 南京市| 信宜市| 来宾市| 伽师县| 海晏县| 海南省| 金川县| 五大连池市| 福安市| 讷河市| 自治县| 荆州市|