PHP - нужны помощники с __construct () - PullRequest
0 голосов
/ 29 сентября 2019

Итак, у меня есть этот PHP-код, который я не получаю

public $user = 'guest';

public function __construct()
{
    $this->user = (isset($_SESSION['user'])) ? $_SESSION['user'] : 'guest';
}

Может кто-нибудь объяснить, пожалуйста, приведенный выше код, и есть ли шанс, что я могу изменить значение сеанса, не обращаясь к стороне сервера

1 Ответ

1 голос
/ 29 сентября 2019

Входящий запрос обрабатывается сценарием на сервере (это PHP, как указывало splash58)

__ construct () создает новые объекты, и внутри решается, не установлен ли user внутри сессии ($ _SESSION (суперглобальный массив), он вставляет значение 'guest' в $this->user.

В основном говорится, что «если пользователь не вошел в систему, он гость».

Вы не можете изменять содержимое $ _SESSION из внешнего интерфейса, это делается на стороне сервера, поэтому вам нужно изменитьPHP-скрипт для применения изменений.

Редактировать: для пояснения, то, что вы видите внутри конструктора - это троичный оператор. Документация здесь: https://www.php.net/manual/en/language.operators.comparison.php#language.operators.comparison.ternary

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...