PHP-自定义函数相关

一:函数定义

  PHP中的函数定义和javascript中的函数定义非常相似

  函数定义格式:function 函数名(参数1,参数2,参数3.......){  ...代码块...  }

  PHP-自定义函数相关_第1张图片

 

 

二:函数参数

  形式参数:在函数声明的时候给的参数叫做形式参数,简称:形参

  实际参数:在函数调用的时候给的参数叫做实际参数,简称:实参

   function wirte($n){
        for ($i=1; $i <$n ; $i++) { 
           echo "$i";
        }
  }
  wirte(2);
  //以上函数中声明函数是的$n为行参
//调用函数传的2是实参

  参数的个数

  1.实参>形参

  2.实参=形参

  3.实参<形参

  4.形参设置了默认值

  5.传参个数不确定

    //1.实参>形参
        
        function demo01($n,$m){
            echo "\$n+\$m的结果是",$n+$m;
        }
        demo01(1,2,3,4);//$n+$m的结果是3


        //2.实参=形参  完美状态
        

        //3.实参<形参
        function demo02($n,$m){
            echo "\$n+\$m的结果是",$n+$m;

        }
        //demo02(1);//报错Uncaught ArgumentCountError: Too few arguments to function demo02()  参数太少无法执行

        //4.形参设置了默认值
        
        function demo03($n,$m=3){
            echo "
"; return $n+$m; } echo demo03(1,2);//当函数形参设置了默认值 //如果调用函数没有传参给形参则使用形参的默认值 //如果调用函数传了实参给形参,此时形参就使用传过来的实参 //5.传参个数不确定 //可变参数列表:当传入的参数不确定的时候,这时候可以使用可变参数列表去获取数值 // func_exists 判断函数是否已经存在 // func_get_args($n) 获取函数调用的第几个实参 // func_get_args() 获取函数调用的所有实参 //案例:获取调用函数是传入参数的总值 function demo04(){ $allargs = func_get_args(); $num = 0; for ($i=0; $i <count($allargs) ; $i++) { $num+=(int)$allargs[$i]; } return $num; } echo "
"; echo demo04(1,2,3,4,5);//15

三:函数返回值

  

php  

        // 返回单个数值
        function demo06($m){
            return $m;
        }
        echo demo06(1);
        // 返回多个数值
        function demo07($m,$n){
            return array($m,$n);
        }
        var_dump(demo07(1,2));

?>

四:可变函数

  

 php 
    
    //可变函数,函数名是一个变量
   
    $a = "wirte";
    // $a(10);

     //可变变量,变量名是一个变量
     $a = 1;
     $v = "a";
     // echo $$v;

    function jpg(){
        echo "
处理jpg图片"; } function gif(){ echo "
处理jpg图片"; } function png(){ echo "
处理jpg图片"; } $file = ""; if (isset($_GET["file_name"])) { $file = $_GET["file_name"];//用户上传的文件名 $x = strrchr($file,"."); $img_type = substr($x,1); echo "$img_type"; $img_type(); } /* string strrchr( string $haystack, mixed $needle) 该函数返回 haystack 字符串中的一部分,这部分以 needle 的最后出现位置开始,直到 haystack 末尾。 substr(字符串,开始索引,长度) */ ?>

你可能感兴趣的:(PHP-自定义函数相关)