Ниже код работает отлично:PHP, как: сохранить переменную сеанса в статический класс переменной
<?php session_start();
$_SESSION['color'] = 'blue';
class utilities
{
public static $color;
function display()
{
echo utilities::$color = $_SESSION['color'];
}
}
utilities::display(); ?>
Это то, что я хочу, но не работает:
<?php session_start();
$_SESSION['color'] = 'blue';
class utilities {
public static $color = $_SESSION['color']; //see here
function display()
{
echo utilities::$color;
} } utilities::display(); ?>
Я получаю эту ошибку: Parse error: syntax error, unexpected T_VARIABLE in C:\Inetpub\vhosts\morsemfgco.com\httpdocs\secure2\scrap\class.php on line 7
Php не любит переменные сеанса, хранящиеся вне функций. Зачем? Это проблема синтаксиса или что? Я не хочу, чтобы создавать объекты, потому что для просто вызова функций утилиты и мне нужно несколько переменных сессии, которые будут храниться глобально. Я не хочу вызывать функцию init()
для хранения глобальных переменных сеанса каждый раз, когда я запускаю функцию. Решения?
ааа стрелять, о чем я думаю мне не нужно хранить их где-нибудь в классе, потому что я могу получить доступ к ним в любом месте в любой момент и без этого. Глупая ошибка ... К большому количеству кодировок я заставляю меня перепробовать простые проблемы, я полагаю. Спасибо, что привлек это к моему вниманию. – payling