后端开发 内容:5

PHP创建变量与内外部作用域

  • 查看作者
  • PHP变量是存储信息的容器,下面有几个变量例子,其中包括内外部作用域。

    变量例子

    <?php
    $x=5;
    $y=6;
    $z=$x+$y;
    echo $z;
    ?>

    PS:在PHP中,这x,y,z三个字母被称为变量。表达式z=x+y我们能计算出z值是11,请把变量视为存储数据的容器。

    创建变量

    <?php
    $a="数字";
    $b=100;
    echo $a;
    echo "<br>";
    echo $b;
    ?>

    PS:PHP没有创建变量的命令。变量会在首次为其赋值时被创建:如果您为变量赋的值是文本,请用引号包围该“值”

    变量规则

    1、变量以 $ 符号开头,其后是变量的名称。

    2、变量名称必须以字母或下划线开头。

    3、变量名称不能以数字开头

    4、变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)

    5、变量名称对大小写敏感($y 与 $Y 是两个不同的变量)

    变量作用域

    local(局部) 函数内部进行访问

    global(全局)函数外部进行访问

    static(静态)

    PS:PHP中,在脚本位置对变量进行声明。变量作用域指的是变量能够被引用/使用的那部分脚本。

    Local和Global

    <?php
    $x=5; // 全局作用域
    function myTest() {
      $y=10; // 局部作用域
      echo "<p>测试函数内部的变量:</p>";
      echo "变量 x 是:$x";
      echo "<br>";
      echo "变量 y 是:$y";
    } 
    myTest();
    echo "<p>测试函数外部的变量:</p>";
    echo "变量 x 是:$x";
    echo "<br>";
    echo "变量 y 是:$y";
    ?>

    PS:上例中,有两个变量 $x 和 $y,以及一个函数 myTest()。$x是全局变量,因为它是在函数之外声明的,而 $y 是局部变量,因为它是在函数内声明的。

    global关键词

    <?php
    $x=5;
    $y=10;
    function myTest() {
       global $x,$y;
       $y=$x+$y;
    } 
    myTest(); // 运行函数
    echo $y; // 输出变量 $y 的新值
    ?>

    PS:global 关键词用于在函数内访问全局变量。要做到这一点,请在(函数内部)变量前面使用 global 关键词:

    static关键词

    <?php
    function myTest() {
      static $x=1;
      echo $x;
      $x++;
    }
    myTest();
    myTest();
    myTest();
    myTest();
    ?>

    PS:当函数完成/执行后,会删除所有变量。请在您首次声明变量时使用 static 关键词:每当函数被调用时,这个变量所存储的信息都是函数最后一次被调用时所包含的信息。

    请登录之后再进行评论

    登录
    最新评论