How does PHP handle variable declaration and initialization, especially in the context of type-safety and scope?

In PHP, variable declaration and initialization can be done in a single line by assigning a value to the variable. PHP is a loosely typed language, meaning variables do not have a specific data type and can change type during execution. To enforce type-safety, you can use type declarations in PHP 7 and above. Variable scope in PHP determines where a variable can be accessed within a script.

// Variable declaration and initialization with type declaration
$age = 25; // integer type
$name = "John"; // string type

// Variable declaration with type declaration
function calculateArea(float $radius) {
    return 3.14 * $radius * $radius;
}

// Variable scope example
$globalVar = "I am a global variable";

function testScope() {
    $localVar = "I am a local variable";
    echo $globalVar; // Accessing global variable from within a function
    // echo $localVar; // This will work
}

testScope();