Home >>PHP Tutorial >PHP $ and $$ Variables

PHP $ and $$ Variables

Difference Between $var and $$var in PHP

PHP $$var uses the value of the variable whose name is the value of $var. It means $$var is known as reference variable where as $var is normal variable. It allows you to have a "variable's variable" - the program can create the variable name the same way it can create any other string.

Var $and Var $$

1. For Example - PHP $ and PHP $$

<?php

$name="Rajeev";

$name="Sanjeev";

echo $name."<br/>";

echo $name."<br/>";

echo $Rajeev;
	
?>

Output
Rajeev
Sanjeev
Sanjeev

In the above example $name is just a variable with string value="Rajeev". $$name is reference variable .

$$name uses the value of the variable whose name is the value of $name.

echo $name print the value: Rajeev echo $$name print the value:Sanjeev \ value of this($name) variable is act as reference of second variable($$name).

echo $rajeev print the value :Sanjeev \ Here $Rajeev is also act as reference variable.

 Example - 2 

<?php

$x = "100";

$x = 200;

echo $x."<br/>";

echo $x."<br/>";

echo "$100";
	
?>

Output
100
200
200

In the Above Example

You first assign the value of a variable, ($x) as the name of another variable.

When you set $x to a value, it will replace that variable name with the value of the variable you provide.

variable $x hold value = 100.

$$x(reference variable) hold value = 200. now we want to print the value.

echo $x gives output:100

echo $$x gives output:200.

echo $100 gives value.200. because it also act as a reference variable for value = 200.


 Example 3.

<?php

$name="Rajeev";

${$name}="Sanjeev";

echo $name."<br/>";

echo ${$name}."<br/>";

echo "$Rajeev"."<br/>";
	
?>

Output Rajeev Sanjeev Sanjeev

 Example 4.

<?php
	
$name="Ravi";
	
${$name}="Ranjan";
	
${${$name}}="Rexx";
	
echo $name;
	
echo ${$name};
	
echo ${${$name}};
  
?>

Output
Ravi
Ranjan
Rexx

In the Above Example

variable $name hold value ="ravi"

variable ${ $name } hold value ="Ranjan" // it also declare like ${Ravi}.

variable ${$ {$name} } hold value ="Rexx" // it act as "variable's of variable of variable" reference.

echo $name show output:ravi

echo ${ $name } show output:Ranjan.

echo ${ $ {$name} } show output :Rexx


Popular Tutorials

PHP Tutorial PHP Introduction For Beginners PHP Advantage PHP Software Requirement PHP WAMP Installation PHP XAMPP Installation PHP Syntax PHP Comments PHP Variables PHP $ and $$ Variables PHP Super global variables How to swap two numbers in PHP PHP Constant PHP:Magic Constant echo and print in PHP PHP Data Types PHP Form GET Method POST Method Form action PHP extract() Function PHP Display result in Textbox Multiple submit buttons php different actions Add two textbox values and display the result in third textbox PHP Operators PHP Arithmetic Operators PHP Assignment Operators PHP Comparative Operators PHP Logical Operators PHP Operators Precedence PHP Conditional Statement PHP if Statement PHP if-else Statement PHP if elseif else Statement PHP Switch Statement PHP calculator Profit and Loss What is Loop PHP For Loop Print star pattern in PHP Create table using for loop in PHP PHP While Loop PHP Do While Loop PHP Foreach Loop PHP String PHP String Functions PHP empty() function PHP str_split() Function PHP Numeric Functions PHP Tutorial PDF For Beginners PHP isset function PHP addcslashes() Function PHP addslashes() Function PHP bin2hex() Function PHP chop() Function PHP chr() Function PHP chunk_split() Function PHP convert_cyr_string() Function PHP convert_uudecode() Function PHP convert_uuencode() Function PHP count_chars() Function PHP crc32() Function PHP crypt() Function PHP echo() Function PHP explode() Function PHP fprintf() Function PHP get_html_translation_table() Function PHP hebrev() Function PHP hebrevc() Function PHP hex2bin() Function PHP html_entity_decode() Function PHP htmlentities() Function PHP htmlspecialchars() Function PHP htmlspecialchars_decode() Function PHP implode() Function PHP join() Function PHP lcfirst() Function PHP levenshtein() Function PHP localeconv() Function PHP ltrim() Function PHP md5() Function PHP md5_file() Function PHP metaphone() Function PHP money_format() Function PHP nl_langinfo() Function PHP nl2br() Function PHP number_format() Function PHP ord() Function PHP parse_str() Function PHP print() Function PHP printf() Function PHP quoted_printable_decode() Function PHP quoted_printable_encode() Function PHP quotemeta() Function PHP rtrim() Function PHP setlocale() Function PHP sha1() Function PHP sha1_file() Function PHP similar_text() Function PHP soundex() Function PHP sprintf() Function PHP sscanf() Function PHP str_getcsv() Function PHP str_ireplace() Function PHP str_pad() Function PHP str_repeat() Function PHP str_replace() Function PHP str_rot13() Function