Глобальні змінні

 

Щоб використовувати всередині функції змінні, задані поза нею, ці змінні потрібно оголосити як глобальні. Для цього в тілі функції слід перерахувати їх імена після ключового слова global:

global $ var1, $ var2;

Приклад. Глобальні змінні

<? 
$a = 1; 
function Test_g () { 
global $a; 
$a = $a * 2; 
echo 'в результаті роботи функції $ a =', $a; 

echo 'поза функції $a =', $a, ','; 
Test_g (); 
echo "<br>"; 
echo 'поза функції $a =', $a, ','; 
Test_g (); ?>

У результаті роботи цього скрипта одержимо: 
поза функції $a = 1, в результаті роботи 
функції $a = 2 
поза функції $a = 2, в результаті роботи 
функції $a = 4

Коли змінна оголошується як глобальна, фактично створюється посилання на глобальну змінну. Тому такий запис еквівалентний наступному (масив $GLOBALS містить всі змінні, глобальні щодо поточної області видимості):

$Var1 = & $GLOBALS ["var1"]; 
$Var2 = & $GLOBALS ["var2"];

Це означає що видалення змінної $var1 не видаляє глобальної змінної $GLOBALS ["var1"].