Home  >  Article  >  Backend Development  >  What does the double $ sign mean in php

What does the double $ sign mean in php

青灯夜游
青灯夜游Original
2022-03-10 15:46:593195browse

The double $ symbol refers to "variable variable", which is a unique variable in PHP. It means that one variable uses the value of another variable as the variable name. The syntax is "$$ variable name"; use Mutable variables can dynamically set and use the variable name of a variable.

What does the double $ sign mean in php

The operating environment of this tutorial: windows7 system, PHP7.1 version, DELL G3 computer

The double $ symbol refers to " "Variable variable" is a unique variable in PHP that allows the name of a variable to be dynamically changed.

The so-called variable variable is a variable that uses the value of another variable as the variable name.

A variable variable obtains the value of an ordinary variable as the variable name of the variable variable. Using this feature we can dynamically set and use the variable name of a variable.

For example, we can set the value of $str:

$name = 'str';

So, we can use

name replaces $str.

name = 5;

This code is equivalent to:

$str= 5;

How to use variable variables

You only need to add at least two "$" symbols before the variable name

Using variable variables in arrays

In order to use mutable variable names for arrays, you need to resolve an ambiguity problem. That is, if you write $$a[1], the parser needs to understand whether you mean to treat $a[1] as a variable, or to treat $$a is treated as a variable, [1] refers to the index of this variable. The syntax to resolve this ambiguity is: use ${$a[1]} in the first case, and ${$a}[1]

in the second case

Class properties can also be accessed through variable property names. Variable property names are taken from the access scope of the variable in which the call was made. For example, if your expression is like this: $foo->$bar, then the runtime will look for the variable $bar in the local variable scope, and its value will be Will be used as a property name of the $foo object. It can also be used if $bar is an array.

Variable variable names cannot be used for super global array variables in PHP functions and classes. The variable $this is also a special variable that cannot be dynamically named.

Example

The following example uses a mutable variable to change the name of the variable. The code is as follows:

<?php
header("content-type:text/html;charset=utf-8");                //设置编码
$str=&#39;trans&#39;;                                                  //声明变量$str
$trans=&#39;PHP中文网&#39;;                                            //声明变量$trans
echo $str;                                                     //输出变量$str
echo "<br/>";
echo $$str;                                                 //通过可变变量输出$trans的值
?>

Detailed explanation of the example:

First define two variables $str and $trans, and output the value of variable $str, and then use a variable variable to change the name of variable $str , and finally output the variable value after changing the name

The running results are as follows:

What does the double $ sign mean in php

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of What does the double $ sign mean in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:What does gc mean in phpNext article:What does gc mean in php