PHP функция создаёт сессию, но не успевает взять её ID

У меня есть функция, которая создаёт сессию в случае её отсутствия. Сессия-то создаётся, вот только скрипт не успевает брать её ID. $session_id равен пустой строке

if (!isset($_COOKIE['PHPSESSID'])) session_start();
$session_id = $_COOKIE['PHPSESSID'];

Что можно сделать, чтобы ID сессии брался корректно?


Ответы (1 шт):

Автор решения: Daniil Tsarenok

Как вариант брать сессию не из кука, а напрямую из неё. Кука ещё нет и сначала выполняется ваш php код, а потом создается куки.

if (!isset($_COOKIE['PHPSESSID'])) session_start();
$session_id = session_id();
→ Ссылка