FavoriteLoading
0

PHP可变变量的理解

可变变量

所谓可变变量,就是一个变量的名,又是一个变量。

可变变量的语法是php的很特殊的语法——其他语言中少见。

$v1 = “abc”;          //这是一个字符串变量,其内容是字符串“abc”

$abc = 10;             //这是一个普通变量,其内容是数字10

echo  $$v1;          //此时,就是所谓“可变变量”

怎么理解:

1,凡是$符号出现,就会有可能理解为是一个变量

2,这里第一个“$”出现了,则php就视图将其解释为一个变量,变量名是$v1;

3,我们有知道,$v1的值是”abc”,

4,那么,第一个“$”符号后面的变量名,就得到为“abc”

5,即:echo 试图输出的是变量$abc, 自然是数字10

实际上,理论上,可变变量的嵌套还可以更多,比如:$$$def;

预定义变量

综述:

1:预定义变量又叫超全局变量,包括:

$_GET, $_POST, $_SERVER, $_REQUEST, $GLOBALS,  $_COOKIE, $_SESSION, ..........(大约10个)

2:作用域问题

php中,自定义的变量的作用域,分两种:全局作用域(函数外),局部作用域(函数内)。

但:

预定义变量的作用域称为“超全局作用域”:全局作用域 + 局部作用域的总和(函数内外全都可用)

3:数据类型问题:

超全局变量都是数组!

欢迎分享本文,转载请保留出处!—重蔚自留地 站长邮箱:951076433@qq.com