Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. setcookie() w PHP

setcookie() w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Czym jest setcookie() w PHP?

setcookie() to funkcja PHP służąca do utworzenia lub modyfikacji ciasteczka cookie w przeglądarce użytkownika. Cookie może przechowywać niewielkie dane, np. identyfikator sesji, preferencje językowe albo zapamiętaną wartość formularza.

Podstawowa składnia

setcookie(nazwa, wartosc, czas_wygasniecia);

Najważniejsze argumenty:
- nazwa - nazwa ciasteczka,
- wartosc - wartość zapisywana w cookie,
- czas_wygasniecia - czas ważności podany jako znacznik czasu Unix.

Przykład z egzaminu

Aby utworzyć cookie o nazwie owoce, wartości jabłko, ważne przez jedną godzinę, należy zapisać:

setcookie("owoce", "jabłko", time() + 3600);

Funkcja time() zwraca aktualny czas w sekundach, a 3600 oznacza jedną godzinę, ponieważ:

60 sekund * 60 minut = 3600 sekund

Ważna zasada

setcookie() musi zostać wywołane przed wysłaniem jakiejkolwiek treści HTML do przeglądarki. Oznacza to, że powinno znajdować się przed znacznikiem <!DOCTYPE html> i przed instrukcjami typu echo.

Przykład poprawny:

<?php
setcookie("owoce", "jabłko", time() + 3600);
?>
<!DOCTYPE html>
<html>
<body>Cookie ustawione.</body>
</html>

Odczyt cookie

Po ponownym żądaniu strony wartość cookie można odczytać przez tablicę superglobalną $_COOKIE:

echo $_COOKIE["owoce"];

Trzeba pamiętać, że cookie ustawione funkcją setcookie() zwykle jest dostępne w $_COOKIE dopiero przy następnym odświeżeniu lub wejściu na stronę.