导读1,//检测函数名称是否存在的函数var_dump(function_exists('strtolower'));var_dump(function_exists('hzy');2,//获得文件拓展名if (!function_exists('getFileExtend')) {function getFileExtend($fileName){retu

1,

//检测函数名称是否存在的函数
var_dump(function_exists('strtolower'));
var_dump(function_exists('hzy');

2,

//获得文件拓展名
if (!function_exists('getFileExtend')) {
    function getFileExtend($fileName){
        return pathinfo($fileName, PATHINFO_EXTENSION);
    }
}
echo getFileExtend("123hzy.php");
echo '</br>';

3,变量的作用域

局部变量

·函数体内声明的变量为局部变量

·局部变量分为动态变量和静态变量

--------------

动态变量

·函数执行完毕之后立即释放

 -------------

静态变量

·通过static关键字声明的变量为静态变量,,当第一次调用函数的时候相当于初始化静态变量,当函数执行完毕之后静态变量没有释放,而是保存在静态内存中,当再次调用函数的时候首先从静态内存中取出变量的值接着执行。

-----------

4、

//global声明变量的正确方式
function test4() {
    global $m,$n;
    $m = 25;
    $n = 35;
    echo '$m: ',$m,'$n: ',$n;
}

5、

//超全局变量,不管函数体内,函数体外都能得到, 以键值对的形式出现,
print_r($GLOBALS);

 所以获取GLOBALS要以下方的形式:

function test5() {
    echo '用户名为: '.$GLOBALS['username'].'</br>';
    echo '年龄为: '.$GLOBALS['age'].'</br>';
    echo '邮箱为: '.$GLOBALS['email'].'</br>';
}
//超全局变量赋值
function test6() {
    $GLOBALS['age'] = 22;
}
test6();
var_dump($age);

6、值传递和引用传递

引用传递直接修改变量本身的内存数据



//只有变量能当作引用被传递
echo '</br>';
//取变量的地址
function test1(&$j) {
    $j += 13;
    var_dump($j);//int(18)
}
$m = 5;
test1($m);
var_dump($m); //int(18)

 7、一个非常重要的函数,运用于二次开发


//这个函数非常有用,特别用于二次开发
print_r(get_defined_functions());

【user】表示用户自己创建的函数。


原文链接:https://www.cnblogs.com/yang101/p/11230747.html
如有疑问请与原作者联系