Если вы не хотите каждый раз обращаться к базе данных для загрузки данных конфигурации, вы можете кэшировать их в сгенерированном файле .inc.Помните, PHP - это просто текст - вы можете использовать PHP-скрипт для генерации другого PHP-скрипта:
$fh = fopen('sitevars.inc'); // skipping error handling, since this is an example.
fwrite($fh, '<' . '?php' . "\n"); // split the <? tags in case an unbalanced ' somewhere hoses things
fwrite($fh, '$lifetheuniverse = 42;' . "\n"); // single quotes to the $ doesn't have to be escaped.
fwrite($fh, "\$layoutaction = 'slap forehead with palm';\n");
fclose($fh);
, а затем вы просто include_once('sitevars.inc');
и boom, это «глобальная» переменная.Не связывайтесь с сеансами.
При этом, если ваши сеансы хранятся в базе данных, скорее всего, они в сериализованном формате.Чтобы правильно выделить отдельный «глобальный» var сеанса из каждого, вам нужно будет загрузить каждую запись, десериализовать, удалить переменную, повторно сериализовать и повторно сохранить в БД.И надеюсь, что вы не ударите чью-то сессию, которая оказывается активной в то время, когда вы делаете эти обновления.