Php函數

函數體現了代碼的重用性;就是不用老是寫同一個代碼段;

1.函數的定義;

關鍵詞:

function functionName(parameters){

    code;

}

  1. <?php 
  2.     //定義函數Text; 
  3.     function Text(){ 
  4.         echo  "i'm the text"."<br />"
  5.     } 
  6.  
  7.     $ret  = Text(); 
  8.     //測試返回值; 
  9.     if (is_null($ret)){ 
  10.         echo "null"
  11.     }else
  12.             echo "$ret"
  13.     } 
  14. ?> 

無帶return 的函數 ,返回了一個NULL ,這是我測試的結果 ;

 

2.函數的參數;

1.按值傳參

2.引用傳參

 

 

  1. <?php 
  2.      $intT1 = 1; 
  3.      $intT2 = 1; 
  4.      //按傳值傳參 
  5.      function Test($can1,$can2){ 
  6.         $can1++; 
  7.         $can2++; 
  8.         echo "\$can1 = $can1"."<br />"
  9.         echo "\$can2 = $can2"."<br />"
  10.      } 
  11.      Test($intT1,$intT2); 
  12.      echo "\$intT1 = $intT1"."<br />"
  13.      echo "\$intT2 = $intT2"."<br />"
  14. //     結果爲: 
  15. //     $can1 = 2 
  16. //     $can2 = 2 
  17. //     $intT1 = 1 
  18. //     $intT2 = 1 
  19. //     即 形參改變了,但原來的變值量沒有變; 
  20.  
  21.  
  22.      function Test1(&$can1,&$can2){ 
  23.         $can1++; 
  24.         $can2++; 
  25.         echo "\$can1 = $can1"."<br />"
  26.         echo "\$can2 = $can2"."<br />"
  27.      } 
  28.      Test1($intT1,$intT2); 
  29.      echo "\$intT1 = $intT1"."<br />"
  30.      echo "\$intT2 = $intT2"."<br />"
  31. //     結果: 
  32. //      $can1 = 2 
  33. //      $can2 = 2 
  34. //      $intT1 = 2 
  35. //      $intT2 = 2 
  36. //     說明了,引用傳參。原來的變量值也會改變 
  37.  
  38. ?> 

 

默認參數值;

  1. <? 
  2.    //如果沒有傳參,則;爲默認值 ; 
  3.    function Test($arg1 = 0; $arg2 = 0){ 
  4.      
  5.    } 
  6. ?> 

2.函數的返回值;

上面剛剛試過說,如果函數沒有設置return 返回值,則返回null;所以我們可以用return 來設置返回值 ;

 

  1. <? 
  2.    function RetTest(){ 
  3.    return 123;  
  4.    } 
  5. ?> 

也可以返回object等等;只要設置相應類型的變量接收;

返回多個值 ;比如說數組;

 

  1. <? 
  2.     function RetTest(){ 
  3.     $user = array("the peo","the box","the text","the run"); 
  4.     return $user
  5.     } 
  6.     list($arg1,$arg2,$arg3,$arg4) = RetTest(); 
  7.     echo $arg1.$arg2.$arg3.$arg4
  8. ?> 

用list() 設置變量來接收返回多組值 ;

 

3.遞歸函數;即調用自身函數;(這方面小弟運用起來比較爛;大家百度發揮吧)

  1. <?php 
  2.    function Refunction($arg1){ 
  3.    if ($arg1 == 10 ){ 
  4.      return $arg1
  5.    } 
  6.    else 
  7.       return Refunction ($arg1+1); 
  8.    } 
  9.    $RET = Refunction(5); 
  10.    echo $RET
  11.  
  12. ?> 

 

4 函數庫;

把一些常用的函數寫成一個文件,到需要的時候 ,要

include()或require;進來

  1. <?php 
  2. //test2.php
  3.    function addint ($arg1,$arg2){ 
  4.  
  5.     return $arg1+$arg2
  6.    } 
  7.    function jianint ($arg1,$arg2){ 
  8.     return $arg1-$arg2
  9.    } 
  10. ?> 
  1. <? 
  2.   include "test2.php"
  3.   $TestAdd = addint(1,2); 
  4.   echo $TestAdd."<br />"
  5.   $Testjian = jianint(2,1); 
  6.   echo $Testjian
  7. ?> 

結果:

3
1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章