Переменные в PHP. Видна ли переменная объявленная через @GLOBALS в других сеансах?

Если я в скрипте объявляю переменную через массив @GLOBALS, видна ли она будет в других сессиях этого скрипта запущенных другими пользователями?

Пример: в переменную записываем некоторое сообщение @GLOBALS['anytext'] = "Hello". Другой пользователь заходит и скрипт пытается считать из этой переменной. Получится ли у него?


Ответы (2 шт):

Автор решения: Marat

Нет. Она доступна во всех контекстах скрипта. https://www.php.net/manual/ru/reserved.variables.globals.php

Если хотите передавать переменную между пользователями, то можно записывать ее в файл или memcache (redis)

→ Ссылка
Автор решения: Haku Kimura

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

  1. Сессии, с помощью глобальной переменной $_SESSION.
  2. Запись в файл и последующее чтение из него.
  3. Кэширование данных.
  4. Запись в какую-либо таблицу в базе данных.

Какой способ более предпочтительный — зависит уже от формата и объёма данных.

→ Ссылка