博客列表 >php的变量作用域

php的变量作用域

刘百万的博客
刘百万的博客原创
2017年11月23日 08:44:13684浏览

这是我的第一篇博客,也是第一次为自己在做的事情写点东西。鼓掌。。。。。。

了解php作用域是通过手册,当时以为懂了,回头再想其实中间细微的地方并没搞清楚。比如,把C#的变量作用域等同于php变量的作用域就是不恰当的,C#跟php在全局变量跟函数内部变量之间的关系是不一样的.

php变量作用域理解如下:

1.函数外部定义变量为全局变量,在文件中可用(注:函数内另有用法)。

2.函数内部的变量为局部变量,作用域始于函数开始“{”到函数结束“}”。

3.函数参数变量的作用域与函数内部变量作用域相同(注:外部调用传参为值引用,变地址引用请用“&”(地址符))。

4.函数外部的变量在函数内部是不可见的,换言之:函数内外同名的变量其实是两个不同的变量。(改变这种情况可以用global(全局变量修饰符))。

5.require或include引入的文件的作用域取决于所处文件中的未知。


example:

<?php

    $number=2;

    $number2=3;

    function myfunction($value)

    {

       $number=$value;

       echo 'inside number:'.$number;  //输出1;

      global $number2;//声明为global全局变量 即内外公用一个变量

     $number2=$value;

    }

    myfunction(1)

    echo '$value:'.$value;//未定义的变量;

    echo 'outside number:'.$number;//输出为2

    echo 'outside number2:'.$number //输出为1

?>



上一条:Offline Explorer下一条:11-23流水账
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议