Intereting Posts

$ _SERVER возвращает два PHPSESSID

Я получаю два PHPSESSID при печати $_SERVER['HTTP_COOKIE'] . На самом деле я не знаю, как он устанавливается дважды, только в моей локальной системе. Когда я проверяю файл cookie SERVER, он выглядит так:

 echo $_SERVER['HTTP_COOKIE']; //result 'fe_toolbar=false; fe_toolbar=false; PHPSESSID=4tvbovcjk0msf9dvibeb31c2b7; langId=1; backendLangId=2; PHPSESSID=46aagg1hg7as2uh9bihjlpp8h7' 

Когда я проверяю свой файл cookie один, как:

 print_r($_COOKIE); //result array ( 'fe_toolbar' => 'false', 'PHPSESSID' => '4tvbovcjk0msf9dvibeb31c2b7', ) 

У вас может быть несколько файлов cookie с тем же именем. Это происходит, когда вы устанавливаете cookie с разными атрибутами Path или Domain. Все они отправляются на сервер.

введите описание изображения здесь

Спецификация RFC 6265

если заголовок Cookie содержит два файла cookie с тем же именем (например, которые были установлены с различными атрибутами Path или Domain), серверам НЕ ДОЛЖНО полагаться на порядок, в котором эти файлы cookie отображаются в заголовке.

Ваше $_COOKIE будет заполнено одним из этих значений.