в чем разница между GLOBALS и GLOBAL?

В PHP я хочу знать различия между GLOBAL и GLOBALS.

Пример:

print_r($GLOBALS); 

Solutions Collecting From Web of "в чем разница между GLOBALS и GLOBAL?"

Это две разные вещи, связанные с одним и тем же: глобальные переменные.

$GLOBALS – суперглобальный массив PHP, представляющий глобальную таблицу переменных, доступную как массив. Потому что это суперглобал, он доступен везде.

Ассоциативный массив, содержащий ссылки на все переменные, которые в настоящее время определены в глобальной области действия сценария. Имена переменных – это ключи массива.

global – ключевое слово для импорта определенной глобальной переменной в локальную таблицу переменных.


Затем вы спросили:

Но почему мы не можем получить доступ к переменным сессии и файла cookie с помощью $GLOBALS ?

Это неправильно, вы можете получить доступ к переменным сеанса и файла cookie с помощью $GLOBALS :

 $GLOBALS['_SESSION']['session_variable_name'] 

Однако $_SESSION является суперглобальным, поэтому вам не нужно использовать ни $GLOBALS ни global для доступа к переменным сеанса от везде:

 $_SESSION['session_variable_name'] 

То же самое относится к $_COOKIE .

$ GLOBALS – это массив, а global – это ключевое слово для объявления или использования глобальных переменных

Это две разные вещи.

global – это ключевое слово, которое сообщает, что переменная является глобальной областью. Например, если вы собираетесь получить доступ к переменной внутри функции, определенной вне, вам нужно будет использовать ключевое слово global, чтобы сделать ее доступной в функции.

$GLOBALSsuperglobal массив . Superglobal просто означает, что он доступен во всех областях в сценарии без использования глобального ключевого слова.

$ GLOBALS: ассоциативный массив, содержащий ссылки на все переменные, которые в настоящее время определены в глобальной области действия сценария. Имена переменных – это ключи массива

GLOBAL / global – это ключевое слово для установки переменной global.

Рекомендации :

http://php.net/GLOBALS

http://php.net/global