zoukankan      html  css  js  c++  java
  • 变量在函数内外的作用域 2

    function fn() {
    	echo "inside the function, $var = ".$var."<br>";
    	$var = "content 2";
    	echo "inside the function, $var = ".$var."<br>";
    }
    $var = "content 1";
    fn();
    echo "outside  the function, $var = ".$var."<br>";
    
    echo "<br><br>";
    

    输出:

    inside the function, $var =
    inside the function, $var = content 2
    outside the function, $var = content 1
    

     函数在被调用之前是不会执行的,所以第一条执行的语句$var = "content",该语句创建了一个名为$var的变量,它具有全局作用域且值为"content 1",下一条执行的语句是调用函数fn(),函数内部的代码按顺序执行,函数第一行引用了一个名为$var的变量,当这行被执行时,就不能看到前面创建的变量$var了,所以它创建了一个具有函数作用域的新变量并将它显示出来,这就是输出的第一行。
    函数内的下一行代码将变量$var的内容设为"content 2"。因为是在函数内部,所以这一行改变了局部$var值,而不是那个全局变量,输出的第二行证实了这个改变。

  • 相关阅读:
    [蓝桥杯2019初赛]
    HDU2054
    HDU1175
    POJ3259
    数据结构
    欢迎来测!!!
    jsp页面el取不到值,java片断可以取到
    HTML中table边框的显示总结转载▼
    jquery插件图片延时加载实例详解(转)
    引用CDN内容的方法总结(转)
  • 原文地址:https://www.cnblogs.com/jacson/p/4222677.html
Copyright © 2011-2022 走看看