关于全局变量的值的修改,有点错误,望更正

来源:3-6 函数变量作用域

〞Ylx - 梦醒时分°

2017-07-06 18:20

$var1 = 1;
$var2 = 2;

function test() {
   global $var1, $var2;
   $var1 = $var2;
}
test();
echo  $var1;

如果这样的话,var1 的值,是可以改变的

写回答 关注

4回答

  • _默_3282392
    2019-12-19 16:53:55

     **如果在一个函数内部给一个声明为 global 的变量赋于一个引用,该引用只在函数内部可见。可以通过使用 $GLOBALS 数组避免这一点。**

  • _默_3282392
    2019-12-19 16:33:36

    $var1 = &$var2;这个去引用传递,没有被赋值改变的

  • 慕粉3287174
    2018-12-24 14:15:12

    https://img.mukewang.com/5c2079240001051e06400406.jpg

    https://img2.mukewang.com/5c20793b0001d4d708150057.jpg

    多谢提醒,验证了一下两种方法都可以修改全局变量的值。PHP的版本是7

  • 慕粉2252412047
    2017-07-09 22:02:47

    $GLOBAS[$val1]=$GLOBAS[$val2]

PHP函数篇

自定义函数,PHP入门教程之必备课程,行业大牛带你飞。

23193 学习 · 40 问题

查看课程

相似问题