Explain PHP variable scopes (local, global, static).

194 viewsSkills Development

Explain PHP variable scopes (local, global, static).

1. Local Scope

  • A local variable is declared within a routine and it is only accessible within the routine.

  • It does not exist outside the function.

Example:

function greet() {

    $message = “Hello, World!”; // local variable

    echo $message;

}

greet(); // Outputs: Hello, World!

echo $message; // ERROR: Undefined variable

Key point: Local variables are temporary and exist only during the function execution.
2. Global Scope

  • A global variable is defined outside any function, usually at the top of a script.

  • By default, functions cannot access global variables directly.

  • To use them inside a function, you need the global keyword or the $GLOBALS array.

Example using global:

$name = “Abarna”; // global variable

function showName() {

    global $name; // import global variable

    echo $name;

}

showName(); // Outputs: Abarna

Example using $GLOBALS:

$age = 25; // global variable

function showAge() {

    echo $GLOBALS[‘age’]; // access global variable

}

showAge(); // Outputs: 25

Key point:There are global variables which can be accessed within functions, and are given special treatment all over the script.


3. Static Scope

  • A static variable is declared inside a function using the static keyword.

  • Unlike normal local variables, its value persists between function calls.

  • Useful for counters or retaining previous values without using global variables.

Example:

function counter() {

    static $count = 0; // static variable

    $count++;

    echo $count . ” “;

}

counter(); // Outputs: 1

counter(); // Outputs: 2

counter(); // Outputs: 3

Key point: Static variables are local in scope but persistent in value.

Pushpanathan Vinushan Answered question August 23, 2025
0

Good one! This is a clear breakdown of variable scopes in PHP. Understanding local, global, and static variables is essential for writing clean and predictable code. Local variables keep data temporary within a function, global variables allow cross-function access when explicitly declared, and static variables give the best of both worlds by maintaining state across function calls without polluting the global scope

Pushpanathan Vinushan Answered question August 23, 2025
0
You are viewing 1 out of 2 answers, click here to view all answers.