PHP函数

2017-11-08

在js中的函数以及用法同样在php中也有相似的用法,让我们来看看吧。

  • 函数,一组代码块(内存中一块区域)。
  • 定义function函数名。
  • 函数需要调用才会执行。
  • 函数可以定义若干个形参。
  • 形参可以设置默认值。
  • 具有默认值的形参排在无默认值的右边。
    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
    function myfunc($param1,$param="zhou"){
    echo $param."hello world";
    }
    myfunc();//zhouhello world
    //-------------------------------------------------
    $func=function(){
    echo "hello world";
    }
    $func();//定义变量装函数
    //-------------------------------------------------
    function getFunc(){
    $array=array();
    for($i=0;$i<10;$i++){
    $array[$i]=function()use($i){函数的闭包
    return 10+$i;
    }
    }
    return $array;
    }
    //$funcArray是一组函数
    $funcArray=$getFunc();
    echo $funcArray[3]();//13
    //-------------------------------------------------
    $a=10;
    //函数内部定义的变量只在函数体内有效
    function addFunc($a){
    global $a;//在函数内部可以使用global关键字将变量定义为全局变量使用
    echo $a=$a-3;
    }
    addFunc(10);//7
    echo $a;//7
    //-------------------------------------------------
    //引用传值,在形参前面添加&
    //引用传值,传的是变量本身,而不是它的值
    function myfunc_2(&$a){
    $a--;
    echo $a;
    }
    $b=10;
    myfunc_2(&b);
    echo($b);//9
    //-------------------------------------------------
    //内置函数
    //empty()判定一个变量是不是存在
    //如果变量不存在返回true
    //一、变量没有定义,返回的true
    //二、$cc="",返回的true
    //三、$cc=0,返回的true
    //四、$cc="0",返回的true
    //五、$cc=null,返回的true
    //六、$cc=false,返回的true
    $cc=true;
    if(empty($cc)){
    echo "变量未定义";
    }else{
    echo $cc;//1
    }
    //-------------------------------------------------
    //isset()
    //$dd="";//返回true
    //$dd=0;//返回true
    //$dd="0";//返回true
    //$dd=null;//返回false
    //$dd=false;//返回true
    if(isset($dd)){
    echo "变量已定义";
    }else{
    echo "变量未定义";
    }