PHP函数基础-小白入门

这篇博客介绍了PHP函数的基础知识,包括函数结构、函数特点、参数定义、变量作用域(全局与局部变量、静态变量)、函数调用顺序,深入讲解了匿名函数、回调函数、递归函数以及自定义函数的使用。通过实例解析了如何调用全局变量和处理函数执行的错误情况。
摘要由CSDN通过智能技术生成

函数结构
function fun()    //fun是函数名,不区分大小写,将重复的功能写在一起
{
    //函数体
}
fun();  //函数调用

// 举例
function nine() 
{
    $i = 1;
    echo "<table width='200' border='0'>";
    do{
        echo "<tr>";
        $j =1;
        do{
        echo "<th>{$j}x{$i}=".($i*$j)."</th>";
        $j++;
        }while($j<=$i);
        echo "</tr>";
        $i++;
    }while ($i<=9);
    echo "</table>";
}
nine();
nine();            // 可以重复调用
function,函数特点
  1. 定义函数在调用之前。定义的代码会释放到内存
  2. 函数定义了之后,不调用就不会执行
  3. 不区分大小写
  4. 函数命名与变量命名规则一致
函数参数
  1. 形式参数:参数列表

  2. 实际参数:实参多于形参,只会传递与形参相对应的值,实参少于形参就会报错,如果没有实参,默认形参值执行

    function sum($a,$b)       //形参
    {
        $sum = $a + $b;
        return $sum;         // 返回参数执行操作后的值,最终输出int(7) 10
        //echo $sum;         // 打印,最终输出7NULL73
    }
    var_dump(sum(2,5));      // 实参
    // 实参多于形参时,只会传递与形参相对应的值,实参少于形参就会报错,如果没有实参,默认形参值执行
    echo sum(sum(2,5),3);    //用return时该类型为int,用echo时该类型为null
    
变量的作用域(链接php3_1.php)
全局变量 & 局部变量
$a = 1;           // 全局变量,可以被php文件整体使用
function hh()
{
    $a = 3;      // 局部变量,函数内部的变量,不可以被其他函数引用
    return $a;
}
hh();
echo $a;
调用全局变量
  • 方法一:

    $num = 100;
    function ll()
    {
        global $num;      // 引用全局,临时存储空间
        $num += 10;       // 可以对原值进行操作
        return $num;     // 将临时的值覆盖原值
    }
    ll();                // 输出:110
    ll();                // 输出:120
    echo $num;
    
  • 方法二

    $num = 100;
    function yy()
    {
        // $x = $GLOBALS["num"];
        // $x += 5;
        // return $x;         // 将num值引入x,x的值加5并返回,并没有覆盖全局变量的值最终得到值为105       
        $GLOBALS["num"] += 6;      // 不需要返回值,调用函数后直接输出$sum
    }
    yy();
    echo yy();                     // 输出112,
    echo $num;                     // 将num引入x,x加5并返回,但是num的值没变,依然100
    
  • 方法三

    $num_1=56;
    $c=function () use($num_1)     // 匿名函数
    {
        $num_1 +=2;
        echo $num_1;              //58,调用了全局变量,但是没改变
    };
    $c();
    echo $num_1;                  //56
    
  • 方法四

    function uu(&$a)
    {
        // 传参时加&符号就是引用全局
        $a++;
    }
    $v=4;
    uu($v);
    echo $v;              // 5
    
静态变量
function ii()
{
    static $a = 5;  
    $a++;
    echo $a;
}
ii();  // 输出值为6 7,初始化赋值一次,重复调用时会保存上一次值,但是局部变量重复调用时每次都会初始化(有问题,也会保存上一次值啊)
ii();
函数调用顺序
function dd()
{
    echo "1";
    ff();
    echo "2";
}
function ff()
{
    echo "a";
    gg();
    echo "b";
}
function gg()
{
    echo "A";
    echo "B";
}
dd();   //输出1aABb2
函数
变量函数
function jj()
{
    echo "pp";
}
$c= 'jj';
$c();           // 变量输出的jj作为调用的函数名,调用jj后输出pp
匿名函数,第三种特殊类型
$a =function ()
{
    echo "我是匿名的";
};                           //注意分号
$a();
回调函数:把另一个函数当参数传递
function func()
{
    echo "我被调用了";
}
function fun_1($x)
{
    $x();                //调用变量,匿名的
}
fun_1('func');           // 先调用func,在作为参数传入fun_1,输参数
递归函数(回调函数):函数内部可以调用其他函数,可以自己调用自己
function fu($t)
{
    echo $t;
    if ($t>1) {
        fu($t-1);           //调用具体参数
    }
    echo $t;
}
$t=5;
fu($t);
自定义函数
  1. include:只要执行出错,
  2. require:只要执行出错,就会终止当前程序

,可以自己调用自己

function fu($t)
{
    echo $t;
    if ($t>1) {
        fu($t-1);           //调用具体参数
    }
    echo $t;
}
$t=5;
fu($t);
自定义函数
  1. include:只要执行出错,
  2. require:只要执行出错,就会终止当前程序
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值