php中 $$str 中 "$$"是什麽意思
发布网友
发布时间:2022-04-18 01:04
我来回答
共5个回答
热心网友
时间:2022-04-18 02:33
来点专业的回答吧
这种写法称为可变变量
有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如:
<?php
$a = "hello";
?>
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。在上面的例子中 hello 使用了两个美元符号($)以后,就可以作为一个可变变量的变量了。例如:
<?php
$$a = "world";
?>
这时,两个变量都被定义了:$a 的内容是“hello”并且 $hello 的内容是“world”。因此,可以表述为:
<?php
echo "$a ${$a}";
?>
以下写法更准确并且会输出同样的结果:
<?php
echo "$a $hello";
?>
它们都会输出:hello world。
要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,解析器需要知道是想要 $a[1] 作为一个变量呢,还是想要 $$a 作为一个变量并取出该变量中索引为 [1] 的值。解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。
热心网友
时间:2022-04-18 03:51
$$str 可以理解为 $( $str ) ;
$str ="cd";那么就是$cd = $$str = "landog";
$$str . = "ok", . 为拼接字符,即 $$str = $$str . "ok";
这里跟$a+=b => $a=$a+b性质一样 (可以看php的运算符)
也就是$cd = $cd . "ok",即$cd = "landogok" ;
$$str . ,这里的 . 是拼接字符 即 $$str .= "ok" => $$str = $$str . "ok";
热心网友
时间:2022-04-18 05:26
来点专业的回答吧
这种写法称为可变变量
有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如:
?php
$a
=
"hello";
?
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。在上面的例子中
hello
使用了两个美元符号($)以后,就可以作为一个可变变量的变量了。例如:
?php
$$a
=
"world";
?
这时,两个变量都被定义了:$a
的内容是“hello”并且
$hello
的内容是“world”
热心网友
时间:2022-04-18 07:17
说起来就是,“变量的变量”
$str="cd";\\变量 一个$
$$str就相当与变量$cd \\变量的变量 两个$$
$$str="hotdog";就是$cd="hotdog";
echo $str; \\一个$(你想想看是变量\还是变量的变量)
热心网友
时间:2022-04-18 09:25
你的$$str相当于$cd一样($str='cd')
echo $cd;//hotdogok