Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Своя суперглобальная переменная

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
hated8
Отправлено: 27 Октября, 2016 - 19:42:06
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




Здравствуйте, в общем задача такая:
Переменная меняет значение раз в сутки. Но к ней идёт много обращений из разных скриптов. Конечно первое что приходит в голову это хранить значение этой переменной в файлике и считывать например file_get_contents, или создать для неё ячейку в мускуле. Но не хотелось бы этого делать опять же из за того что значение меняется редко а обращений много. В идеале было бы обзавестись своей суперглобальной переменной типа $_server чтобы к ней можно было обращаться из любого скрипта.

Подскажите пожалуйста как это сделать?
 
 Top
vova3261
Отправлено: 28 Октября, 2016 - 02:35:11
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




Да в общем-то вариантов реализации много если речь идет об обращениях к одной переменной в пределах одного HTTP запроса то можно и в $_SERVER положить. Ну как-то так:
можно положить в сессию для каждого клиента. Ну и если так сильно хочется глобальных переменных установленных по дефолту можно даже через конфоги апача
например так SetEnv MY_VAR "123456"
MY_VAR - будет доступен в $_SERVER. Ну а если эту переменную будут использовать одновременно несколько пользователей и менять ее то без записи ее в файл или БД никак
 
 Top
hated8
Отправлено: 28 Октября, 2016 - 13:20:14
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




vova3261 пишет:
Да в общем-то вариантов реализации много если речь идет об обращениях к одной переменной в пределах одного HTTP запроса то можно и в $_SERVER положить. Ну как-то так:
можно положить в сессию для каждого клиента. Ну и если так сильно хочется глобальных переменных установленных по дефолту можно даже через конфоги апача
например так SetEnv MY_VAR "123456"
MY_VAR - будет доступен в $_SERVER. Ну а если эту переменную будут использовать одновременно несколько пользователей и менять ее то без записи ее в файл или БД никак

О том и речь, что будут её использовать разные пользователи... Иначе мне бы и констант или global хватило...
 
 Top
LIME
Отправлено: 29 Октября, 2016 - 04:33:58
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




я бы положил в key-value хранилище
предпочитаю redis по ряду причин
тебе наверное проще будет класть в mysql
и раз такое дело заведи таблицу для подобных переменных
где есть 2 там есть больше...тут не 2 конечно но смысл тот же)
(Добавление)
напоминаю что mysql активно юзает кэширование в памяти
(Добавление)
ну и для полноты картины
CODE (htmlphp):
скопировать код в буфер обмена
  1. $ export MY_VAR=123456


но лучше так не делать
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB