W języku PHP zamieszczono fragment kodu. Plik cookie utworzony przez to polecenie
setcookie("osoba", "Anna Kowalska", time() + (3600 * 24 * 7));
A. będzie przechowywany na serwerze przez 7 godzin.
B. zostanie usunięty po tygodniu od jego utworzenia.
C. będzie przechowywany na serwerze przez tydzień.
D. zostanie usunięty po 7 godzinach od jego utworzenia.
Poprawna jest odpowiedź: zostanie usunięty po tygodniu od jego utworzenia. Funkcja setcookie() w PHP tworzy ciasteczko wysyłane do przeglądarki użytkownika. Jej trzeci argument określa czas wygaśnięcia jako znacznik czasu Unix, czyli liczbę sekund od 1 stycznia 1970 r. Wyrażenie time() + (3600 × 24 × 7) oznacza bieżący czas powiększony o 604 800 sekund. Ponieważ 3600 sekund to 1 godzina, 24 godziny to doba, a 7 dób to tydzień, cookie wygaśnie po tygodniu. W praktyce taki mechanizm stosuje się np. do zapamiętania preferencji użytkownika. Typowa pułapka: cookie jest przechowywane po stronie przeglądarki, a nie jako plik na serwerze.
W tym fragmencie najważniejszy jest trzeci argument funkcji setcookie(), czyli czas wygaśnięcia cookie. Poprawna odpowiedź brzmi: zostanie usunięty po tygodniu od jego utworzenia. Odpowiedź będzie przechowywany na serwerze przez tydzień błędnie opisuje miejsce przechowywania - cookie znajduje się po stronie klienta, czyli w przeglądarce użytkownika, a serwer otrzymuje je dopiero w kolejnych żądaniach HTTP. Odpowiedź zostanie usunięty po 7 godzinach od jego utworzenia byłaby trafna przy wyrażeniu time() + (3600 × 7), ale tutaj występuje jeszcze mnożenie przez 24, więc chodzi o 7 dni. Odpowiedź będzie przechowywany na serwerze przez 7 godzin łączy dwa błędy: zły czas oraz błędne miejsce przechowywania. Typowy błąd myślowy polega na zauważeniu liczby 7 i powiązaniu jej bezpośrednio z godzinami, z pominięciem całego wyrażenia 3600 × 24 × 7.