0Pricing
PHP Academy · Lekcja

Rozpoczynanie i używanie sesji

Rozpoczynaj sesję za pomocą session_start i przechowuj dane w _SESSION

Rozpoczynanie i używanie sesji to bezpłatna lekcja PHP Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej PHP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs PHP Academy zawiera 4 lekcji w sumie.

Czym są sesje PHP?

HTTP jest bezstanowy. Sesje PHP przechowują dane między wieloma żądaniami po stronie serwera i odwołują się do nich za pomocą identyfikatora sesji zapisanego w ciasteczku.

session_start()

Wywołaj session_start() przed wysłaniem jakichkolwiek danych wyjściowych. Funkcja wznowi istniejącą sesję albo utworzy nową.

<?php
session_start();
// Must be called before any echo/HTML output

Przechowywanie danych w $_SESSION

Superglobalna zmienna $_SESSION jest zwykłą tablicą. Przypisuj wartości do kluczy, aby przechowywać dane bieżącej sesji.

<?php
session_start();
$_SESSION["user_id"]  = 42;
$_SESSION["username"] = "alice";
$_SESSION["cart"]     = [];

Odczytywanie danych sesji

Uzyskaj dostęp do danych sesji w kolejnych żądaniach po wywołaniu session_start().

<?php
session_start();
if (isset($_SESSION["user_id"])) {
    echo "Welcome back, ".$_SESSION["username"];
} else {
    echo "Please log in";
}

Usuwanie kluczy sesji

Użyj unset(), aby usunąć pojedyncze klucze sesji.

<?php
session_start();
unset($_SESSION["cart"]);

Niszczenie sesji

Aby całkowicie wylogować użytkownika: usuń wszystkie dane sesji, zniszcz sesję i wygaś ciasteczko.

<?php
session_start();
$_SESSION = [];
if (ini_get("session.use_cookies")) {
    $p = session_get_cookie_params();
    setcookie(session_name(), "", time()-3600,
        $p["path"], $p["domain"], $p["secure"], $p["httponly"]);
}
session_destroy();

Przechowywanie danych sesji

Domyślnie PHP przechowuje dane sesji w plikach w katalogu tymczasowym serwera. Niestandardowe mechanizmy obsługi mogą przechowywać sesje w Redis, Memcached lub bazie danych.

Identyfikator sesji

Pobieraj lub ustawiaj identyfikator sesji za pomocą session_id(). Domyślnie identyfikator jest wysyłany do klienta jako ciasteczko o nazwie PHPSESSID.

Czas życia sesji

Kontroluj czyszczenie danych za pomocą session.gc_maxlifetime (liczba sekund bezczynności, po której dane mogą zostać usunięte).

Komunikaty flash

Sesje doskonale nadają się do przechowywania jednorazowych komunikatów flash po przekierowaniu.

<?php
// Set:
$_SESSION["flash"] = "Profile updated!";
header("Location: /profile");
// Read and remove:
$msg = $_SESSION["flash"] ?? null;
unset($_SESSION["flash"]);
echo $msg;

Sesja a ciasteczko

Sesje przechowują dane po stronie serwera (do klienta wysyłany jest tylko identyfikator). Ciasteczka przechowują dane po stronie klienta. Sesje są bezpieczniejsze w przypadku poufnych danych.

Podsumowanie

Wywołuj session_start() na początku każdej strony korzystającej z sesji. Używaj $_SESSION do odczytu i zapisu danych. Podczas wylogowywania niszcz sesję.

Szybkie sprawdzenie

Gdzie należy wywołać session_start()?

Często zadawane pytania

Czy lekcja „Rozpoczynanie i używanie sesji” jest bezpłatna?

Tak — pełny tekst „Rozpoczynanie i używanie sesji” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu PHP Academy, przejdź na CoddyKit PRO. Kurs PHP Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Rozpoczynanie i używanie sesji”?

Rozpoczynaj sesję za pomocą session_start i przechowuj dane w _SESSION Ćwiczysz PHP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć PHP Academy?

Nie wymagamy żadnego doświadczenia. PHP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Rozpoczynanie i używanie sesji”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji PHP Academy?

Tak. Każda lekcja PHP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Rozpoczynanie i używanie sesji
  2. Dobre praktyki bezpieczeństwa sesji
  3. Ustawianie i odczytywanie ciasteczek
  4. Bezpieczeństwo ciasteczek: flagi HttpOnly i Secure
← Powrót do PHP Academy