< Php Tutorial

Php variables

← Previous Next →


A variable is a means of storing a value, such as text string "Hello World!" or the integer value 4.
A variable can then be reused throughout your code, instead of having to type out the actual value over and over again. In PHP you define a variable with the following form:

$variable_name = Value;

If you forget that dollar sign at the beginning, it will not work. This is a common mistake for new PHP programmers!

 Variable example

Say that we wanted to store the values that we talked about in the above paragraph. How would we go about doing this? We would first want to make a variable name and then set that equal to the value we want. See our example below for the correct way to do this.

PHP Code:

<?php
  $hello = "Hello World!";
  $a_number = 4;
  $anotherNumber = 8;
?>

Note for programmers: PHP does not require variables to be declared before being initialized.

PHP variable naming conventions

There are a few rules that you need to follow when choosing a name for your PHP variables.

  • PHP variables must start with a letter or underscore "_".
  • PHP variables may only be comprised of alpha-numeric characters and underscores. a-z, A-Z, 0-9, or _ .
  • Variables with more than one word should be separated with underscores. $my_variable
  • Variables with more than one word can also be distinguished with capitalization. $myVariable.

PHP Variables Scope

In PHP, variables can be declared anywhere in the script. The scope of a variable is the part of the script where the variable can be referenced/used. PHP has three different variable scopes:

  • local
  • global
  • static

Global and Local Scope

A variable declared outside a function has a GLOBAL SCOPE and can only be accessed outside a function:

Example

<?php 
    $x = 5; 
     // global scope 
    function myTest() { 
       // using x inside this function will generate an error 
       echo "<p>Variable x inside function is: $x</p>";
    }
    myTest(); 
    echo "<p>Variable x outside function is: $x</p>"; 
?>

A variable declared within a function has a LOCAL SCOPE and can only be accessed within that function:

Example

<?php 
   function myTest() { 
     $x = 5; 
     // local scope 
     echo "<p>Variable x inside function is: $x</p>"; 
   } 
   
   myTest(); 
   // using x outside the function will generate an error 
   echo "<p>Variable x outside function is: $x</p>"; 
?>

You can have local variables with the same name in different functions, because local variables are only recognized by the function in which they are declared.


PHP The global Keyword

The global keyword is used to access a global variable from within a function. To do this, use the global keyword before the variables (inside the function):

Example

<?php 
    $x = 5; 
    $y = 10; 
    function myTest() { 
        global $x, $y; 
        $y = $x + $y; 
    }

   myTest(); 
   echo $y; // outputs 15 
?>

PHP also stores all global variables in an array called $GLOBALS[index]. The index holds the name of the variable. This array is also accessible from within functions and can be used to update global variables directly. The example above can be rewritten like this:

Example

<?php 
    $x = 5; 
    $y = 10; 
 
    function myTest() { 
        $GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y']; 
    } 

    myTest(); 
    echo $y; // outputs 15 
?>

PHP The static Keyword

Normally, when a function is completed/executed, all of its variables are deleted. However, sometimes we want a local variable NOT to be deleted. We need it for a further job. To do this, use the static keyword when you first declare the variable:

Example

<?php 
    function myTest() { 
        static $x = 0; 
        echo $x; 
        $x++; 
    } 

    myTest(); 
    myTest(); 
    myTest(); 
?>

Then, each time the function is called, that variable will still have the information it contained from the last time the function was called.
Note: The variable is still local to the function.

← Previous Next →