• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

PHP基础-自定义函数-变量范围-函数参数传递

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

一、自定义函数
    function 函数名([形式参数1,形式参数2,....形式参数n]){
        //各种PHP代码....
        //......
        return 表达式;//也可以不返回,如果不写那么默认返回null
    }
    
    函数的调用:
        函数的调用需要遵循定义函数的时候写的规则,一一对应,将具体的实际参数传给定义函数时候写的形式参数!
        调用函数之后执行的过程是相对独立的,互补干扰,默认没有联系!
        执行完毕返回调用的位置继续向下执行
    函数的返回值:
        返回给调用者,默认返回null
    
    函数比喻成我们现实生活中的 某个零件的制造部门!
    参数:原材料或者是这个零件的一些具体的参数!
二、PHP变量的范围
    1.局部变量
        function test(){
            $a=1;//局部变量$a,尽在这个函数内部有效
        }
        echo $a;
    2.全局变量
        $i=10;//全局变量(外部变量)
        define('MY_NAME','孙胜利');
        function test(){
            echo MY_NAME;
            global $i;//声明$i为全局变量,然后再这个函数内部就可以使用$i
            echo $i;
            $a=1;
        }
        test();
    3.静态变量
        function test(){
            static $a=10;//静态变量$a,初始化静态变量,尽在第一次调用的时候执行
            echo ++$a;//当第二次执行这个函数的时候$a这个变量依然存在并且里面的也值依然存在!
        }
        test();
        echo '<br />';
        test();
        echo '<br />';
        test();
        echo '<br />';
        test();
        echo '<br />';
        test();
        echo '<br />';
        test();
        echo '<br />';
        test();
三、参数的传递
    1.按值传递参数
        默认的,我们在传递参数的时候默认使用的就是这个方式!
        对形式参数的操作,根本不是影响到实际参数(变量)的值,两者相当于没有联系!
    2.按引用传递参数
        按引用传递参数,相当于形式参数和实际参数指的是同一个人,只是名字不一样,对于形式参数的操作会直接影响到实际参数(变量);
    3.函数的默认参数
        可以给形式参数设置默认值,设置方法很简单直接赋值即可!
        给形式参数加默认值的时候是重右往左加的,右边的必须有,才能够给左边的加!
    4.可变长度参数列表
        PHP提供给我们的,可以直接使用
        func_get_args();
        func_get_arg();
        func_num_args();
        这三个函数可以使用在我们的自定义函数内部,能够返回给我们一些关于参数的信息!

四、可变函数(变量函数)
  直接把函数赋值给变量

/* 可变函数 */
function test(){
    echo '测试函数2';
}
$a='test';
$a();//test();
  可变函数不能用于例如 echo,print,unset(),isset(),empty(),include,require 以及类似的语言结构。需要使用自己的包装函数来将这些结构用作可变函数。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP中ajax返回数据类型为JSON数据的处理发布时间:2022-07-10
下一篇:
PHP数据库抽象层--PDO(PHPDataObject)[一]发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap