169 lines
3.7 KiB
Markdown
169 lines
3.7 KiB
Markdown
---
|
|
title: Learn About Php Variables
|
|
---
|
|
Variables are containers for storing data such as `strings`, `integers`, `boolean` values, `array` and objects.
|
|
|
|
PHP follows certain rules for variable declarations such as:
|
|
|
|
* The variable must begin with a dollar sign ($)
|
|
|
|
Example:
|
|
|
|
`php
|
|
<?php
|
|
$var = 5;
|
|
?>`
|
|
|
|
* The variable name can contain characters such as A-Z, a-z, 0-9, _ and <a href='http://www.asciitable.com/ "ASCII Table"' target='_blank' rel='nofollow'>ASCII</a> characters from 127-255.
|
|
|
|
Example:
|
|
|
|
`php
|
|
<?php
|
|
$var = 5; //Valid
|
|
$var_1 = "Foo"; //Valid
|
|
$_var2 = 'Bar'; //Valid
|
|
$var.3 = 'Baz'; //Invalid
|
|
?>`
|
|
|
|
* The variable name can begin with underscore (_).
|
|
|
|
Example:
|
|
|
|
`php
|
|
<?php
|
|
$_var2 = 'Bar'; //Valid
|
|
?>`
|
|
|
|
* The variable name must not begin with a number 0-9.
|
|
|
|
Example:
|
|
|
|
`php
|
|
<?php
|
|
$9var3 = 'Baz'; //Invalid
|
|
?>`
|
|
|
|
* The variable name is case sensitive.
|
|
|
|
Example:
|
|
|
|
<?php
|
|
$var = 5; //Valid
|
|
$VAR = "Foo"; //Valid
|
|
echo $var; //Output 5
|
|
echo "<br>";
|
|
echo $VAR; //Output Foo
|
|
?>
|
|
|
|
PHP is a loosely typed language, hence we don't need to declare the data type of a variable when declaring the variable. Unlike Java or C.
|
|
|
|
<?php
|
|
$var = 5;
|
|
$var2 = 4;
|
|
$sum = $var+$var2;
|
|
echo $sum; //Output 9
|
|
echo "<br>";
|
|
echo $var+$var2; //Output 9
|
|
?>
|
|
|
|
The variables can also be assigned by referencing. This allows two variables to refer to the same content. The `&` operator is placed before the variable that is to be referenced.
|
|
|
|
Example :
|
|
|
|
<?php
|
|
$var1 = "foo";
|
|
$var2 = "bar";
|
|
|
|
myTest($var1, $var2);
|
|
|
|
echo $var1; //Output foo
|
|
echo $var2; //Output BAR
|
|
|
|
function myTest($var1, &$var2){
|
|
$var1 = "FOO";
|
|
$var2 = "BAR";
|
|
}
|
|
?>
|
|
|
|
To have variable names set dynamically we use the variable variables. This can be particularly useful when there is a need to create multiple variables.
|
|
|
|
Example :
|
|
|
|
<?php
|
|
|
|
$var = 'Tom';
|
|
echo $var; //Output Tom
|
|
$$var = 'Cat'; //The value of $$var is the value of $var. So $$var and $Tom give the same output.
|
|
echo $$var; //Output Cat
|
|
echo $Tom; //Output Cat
|
|
?>
|
|
|
|
# Variable Scope
|
|
|
|
Scope of variable refers to the places from where a variable is accessible.
|
|
|
|
* Global scope is for the variables that are declared outside a function. These variables can be accessed from anywhere but not within a function.
|
|
* Local scope is for the variables declared within a function that can not be accessed from anywhere outside the function.
|
|
|
|
Example:
|
|
|
|
<?php
|
|
$global = "Hello";
|
|
|
|
function Test(){
|
|
$local = "World";
|
|
echo $global; //Error
|
|
echo $local; //Output World
|
|
}
|
|
|
|
Test();
|
|
echo $global; //Output Hello
|
|
echo $local; //Error
|
|
?>
|
|
|
|
To access global variables inside a function:
|
|
|
|
<?php
|
|
$global = "Hello";
|
|
|
|
function Test(){
|
|
global $global;
|
|
$local = "World";
|
|
echo $global; //Output Hello
|
|
echo $local; //Output World
|
|
}
|
|
|
|
Test();
|
|
echo $global; //Output Hello
|
|
echo $local; //Error
|
|
?>
|
|
|
|
# Static Variables
|
|
|
|
Everytime a function is created all of its local variables are deleted. To retain the variable's last value we declare it `static`.
|
|
|
|
Example :
|
|
|
|
<?php
|
|
|
|
function WithStatic(){
|
|
static $var = 0;
|
|
echo $var;
|
|
$var++;
|
|
}
|
|
|
|
WithStatic(); //Output 0
|
|
WithStatic(); //Output 1
|
|
WithStatic(); //Output 2
|
|
|
|
function WithoutStatic(){
|
|
$var = 0;
|
|
echo $var;
|
|
$var++;
|
|
}
|
|
|
|
WithoutStatic(); //Output 0
|
|
WithoutStatic(); //Output 0
|
|
WithoutStatic(); //Output 0
|
|
?> |