W PHP plik cookie tworzy się najczęściej funkcją setcookie, w której podaje się m.in. nazwę, wartość oraz parametr określający czas wygaśnięcia. Kluczowa zasada: cookie jest przechowywane po stronie klienta, czyli w przeglądarce użytkownika. Serwer jedynie wysyła do przeglądarki nagłówek HTTP ustawiający cookie, a później przeglądarka odsyła je w kolejnych żądaniach.
Jeżeli w kodzie ustawiono wygaśnięcie jako aktualny czas + jedna doba (typowo 24 godziny, czyli 86400 sekund), to cookie będzie ważne przez jeden dzień od momentu utworzenia. Po upływie tego czasu przeglądarka powinna je usunąć lub przestać wysyłać do serwera.
Dlaczego pozostałe odpowiedzi są błędne?
- Stwierdzenia o tym, że cookie "będzie przechowywane na serwerze", są niepoprawne w sensie technicznym: klasyczne cookies HTTP trzyma przeglądarka. Na serwerze mogą być przechowywane dane sesji lub logiki powiązane z identyfikatorem z cookie, ale samo cookie nie jest tam magazynowane jako mechanizm przeglądarkowy.
- Odpowiedzi mówiące o "jednej godzinie" byłyby prawdziwe tylko wtedy, gdyby czas wygaśnięcia ustawiono na około 3600 sekund (lub odpowiadającą temu datę). Jeśli kod wskazuje na dobę, to godzina nie pasuje do parametru wygaśnięcia.
Wskazówka egzaminacyjna: zawsze rozdzielaj miejsce przechowywania (przeglądarka) od czasu życia (Expires/Max-Age). Gdy widzisz przeliczenia sekund (np. 60*60*24), przelicz je na godziny i dni, zanim wybierzesz odpowiedź.