一些簡單的php函數

這幾天複習了php函數,溫故知新感覺加深了不少印象。
下面就來介紹幾個在php中常用的函數吧。

//冒泡排序找最大值
function maopao($a){
$arr = $a;
$max_value = $arr[0];
foreach($arr as $num){
    if($max_value<$num){
        $max_value = $num;
    }
}
return $max_value;
}

//php中的默認函數的使用
//注:默認函數的形參智能寫在最右面
function def($a,$b=false){
    if($b){
        echo 'function has been called';

    }
}

//可變參數列表
//此方法適用於php5.5以前的版本
function get_sum(){
    $sum=0;
    $args_num=func_num_args();
    if($args_num==0){
        echo 0;
    }else{
    for($i=0;$i<$args_num;$i++){
        $sum += func_get_arg($i);
    }
    echo $sum;
    }
}

//可變參數
//此方法適用於php5.6以後的版本
function get_sum2(...$nums){
    $sum=0;
    if(!nums){
        echo 0;
    }else{
        foreach($nums as $val){
            $sum += $val;
        }
        echo $sum;
    }
}

//變量交換函數
//通過這個函數我想說明:如果用的是引用,那麼與聲明的變量公用存儲空間,方法外
//輸出變量,發現變量也變化了,但是如果值傳的方法,那麼原變量不會發生改變,因爲  
//不是同一存數空間
 function swap(&$a,&$b){
    $temp=$a;
    $a=$b;
    $b=$temp;
} 

//php實現階乘,也可用遞歸方法
function factorial($num){
    $result=1;
    for($i=1;$i<=$num;$i++){
        $result*=$i; 
    }
    return $result;
} 

//嵌套函數,當out()未被調用的時候,不能調用in()
function out($out_str){
    if(!function_exists("in")){
        function in($in_str){
            echo $in_str;
        }
    }
    echo $out_str;
}

//閉包函數
function col($name,Closure $n){
    echo "name is {$name}";
    $n();
}
//調用
col("bread",function(){
    echo "this function has been called";
});

先總結這麼多,以後有時間繼續補充。

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