Heim > Backend-Entwicklung > PHP-Tutorial > Sitzungen in PHP

Sitzungen in PHP

PHPz
Freigeben: 2024-08-29 12:42:28
Original
1138 Leute haben es durchsucht

Sitzungen werden in Webanwendungen verwendet. Die Verwendung von Sitzungen in PHP dient dazu, die Daten auf verschiedenen Seiten einer Website verfügbar zu machen. Die Daten oder Informationen wie Name, Adresse usw. werden von einer Seite zu einer anderen Benutzersitzung übertragen. Diese Sitzungsinformationen werden zu Authentifizierungszwecken verwendet. So wie die Cookies im Browser des Clients gespeichert werden, werden die Sitzungsdaten auf dem Server in einem temporären Verzeichnis gespeichert.

WERBUNG Beliebter Kurs in dieser Kategorie PHP-ENTWICKLER - Spezialisierung | 8-Kurs-Reihe | 3 Probetests

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Um eine Sitzung zu beginnen, verwenden wir die Funktion session_start(). Und wenn die Sitzung beginnt, dauert sie standardmäßig 24 Minuten, was 1440 Sekunden entspricht. Eine Sitzung wird durch Sitzungskennungen oder SID identifiziert, bei denen es sich um eine eindeutige Nummer zur Identifizierung jedes Benutzers handelt.

Wie erstelle ich Sitzungen in PHP?

session_start() ist die Funktion zum Starten einer Sitzung. Wenn bereits eine Sitzung vorhanden ist, wird dieselbe Sitzung verwendet. Andernfalls wird eine neue Sitzung erstellt. Diese Funktion wird immer am Anfang jeder Seite aufgerufen. Nachdem die Funktion aufgerufen wurde, können wir mit dem Speichern von Werten in den Sitzungsvariablen beginnen, jedoch nicht vorher. PHP speichert Informationen des Benutzers in einer superglobalen Variablen $_SESSION.

Um den Verzeichnispfad zu kennen, in dem Sitzungen gespeichert sind, haben wir eine Direktive namens session_save_path in der php.ini-Datei, um den Pfad zu speichern. Außerdem gibt die session_id die mit der aktuellen Sitzung verknüpfte ID aus. Es handelt sich um eine eindeutige, zufällig generierte Zahl.

Schauen wir uns das folgende Programm an.

Wenn Sie in diesem Programm diese Sitzungsvariable mit print_r($_SESSION) drucken, werden alle festgelegten Sitzungsdaten gedruckt. Die Ausgabe erfolgt in Form eines assoziativen Arrays von Schlüssel-Wert-Paaren.

In diesem Beispiel starten wir zuerst die Sitzung mit der Funktion session_start(), initialisieren Variablen und weisen sie Sitzungsvariablen zu, indem wir _SESSION[‘name’] = $name verwenden, und drucken das superglobale Array aus. Wir drucken den eindeutigen Sitzungs-ID-Wert auch mit der Funktion session_id() aus.

Beispiel

Code:

<?php
// example to start session
//beginning a session
// no arguments are passed to this function
session_start();
//initializing variables
$name = 'Neha';$age = 28;
//storing values in session
$_SESSION['name'] = $name;
$_SESSION['age'] = $age;
// printing session valuesprint_r($_SESSION);
//using the session id
echo '<br > The session_id is ';
echo session_id();
?>
Nach dem Login kopieren

Ausgabe:

Sitzungen in PHP

Wie lösche ich Sitzungen in PHP?

Im Folgenden finden Sie ein Beispiel für eine Löschsitzung:

Die Funktion Session_destroy() wird verwendet, um eine Sitzung zu zerstören. Diese Funktion zerstört die komplette Sitzung. Um eine einzelne Sitzungsvariable zu deaktivieren, können wir die Funktion unset() verwenden.

In diesem Beispiel drucken wir zuerst die Sitzungsdaten aus, um zu erfahren, was die Sitzung enthält. Anschließend zerstören wir die bereits gesetzten Sitzungsvariablen mit der Funktion unset(). Hier zerstören wir beide gesetzten Sitzungsvariablen wie den Namen und das Alter. Und nach der Zerstörung drucken wir die Sitzung erneut aus und sehen, dass sie ein leeres Array zurückgibt, was bedeutet, dass die Variablen nicht mehr gesetzt wurden und die Sitzung nicht mehr existiert.

Code:

<?php
//example to unset session variables
//starting a session
session_start();
print_r($_SESSION);
//before destroying the session
//printing the session
unset($_SESSION['name']);
unset($_SESSION['age']);
echo 'Session destroyed';
//after destroying the session
//printing the session
print_r($_SESSION);
?>
Nach dem Login kopieren

Ausgabe:

Sitzungen in PHP

Wie kann ich eine Sitzung zerstören?

Im folgenden Beispiel zerstören wir eine Sitzung.

Um die Sitzung zu zerstören, überprüfen wir zuerst den Sitzungswert und zerstören dann die Sitzung. und drucken Sie erneut die Sitzung aus, die ein leeres Array sein wird, da die Sitzung nicht existiert.

Beispiel #1

Code:

<?php
//example to destroy session
//starting a session
session_start();
//to completely destroy a session
session_destroy();
echo 'Session destroyed';
//after destroying the session
//printing the session
echo '<br />';
print_r($_SESSION);
?>
Nach dem Login kopieren

Ausgabe:

Sitzungen in PHP

Hier im Programm sehen wir, dass wir in der ersten Zeile die Sitzung starten und die Zählvariable auf 0 initialisieren. Als nächstes prüfen wir, ob eine Sitzungsvariable gesetzt ist oder nicht. Hier prüfen wir eine Bedingung, ob ein Sitzungsname page_views gesetzt ist; Wenn ja, erhöhen Sie den Wert der Zählvariablen um eins. Wenn nicht, initialisieren Sie den Zählwert auf eins.

Beispiel #2

Code:

<?php
session_start();
$count = 0;
if(!isset($_SESSION['page_views'])) {
$_SESSION['page_views'] = 1;
$count = $_SESSION['page_views'];
} else {
$_SESSION['page_views'] = $_SESSION['page_views'] + 1 ;
$count = $_SESSION['page_views'];
}
?>
<html>
<head><title>Finding count of page views</title></head>
<body>
<?php echo '<br>'. 'The count of page views '. $count;
?>
</body>
</html>
Nach dem Login kopieren

Ausgabe:

Sitzungen in PHP

Wie aktiviere ich die automatische Sitzung in PHP?

Um automatische Sitzungen in PHP zu aktivieren, müssen wir eine Änderung in der Konfigurationsdatei vornehmen, die php.ini ist.

Wobei php.ini eine Standardkonfigurationsdatei ist

Sitzungen starten nicht automatisch; Damit eine Sitzung automatisch funktioniert, müssen wir Folgendes tun, aber sobald dies erledigt ist, wird die Sitzung automatisch für alle Dateien gestartet und geschlossen, nachdem die Standardzeit abgelaufen ist.

Also suchen wir in der php.ini-Datei nach

session.auto_start = 0

und setzen Sie den Wert wie folgt auf 1

session.auto_start = 1

Dies hilft PHP, Sitzungen automatisch zu starten.

Wichtigkeit der Sitzung

Einige wichtige Informationen zur Sitzung sind unten aufgeführt.

  • Wie $_COOKIE haben wir $_SESSION, eine superglobale Variable, die auf dem Server gespeichert wird.
  • Wenn der Browser des Benutzers die Cookies nicht unterstützt, können wir die Sitzung verwenden. Jeder Sitzung ist je nach Benutzerbesuch auf der Website eine eindeutige ID zugewiesen.
  • In Bezug auf die Datenspeicherung speichert die Sitzung mehr Daten, als ein Cookie speichern kann.
  • Die Sitzung wird verwendet, um Informationen von einer Seite zur anderen zu übertragen.
  • Die Sitzung kann verwendet werden, um die Anzahl der Besucher auf der Website zu ermitteln.
  • Die Sitzung wird auch zu Authentifizierungszwecken verwendet.
  • Generierte Sitzungs-IDs sind eindeutig.

Fazit

In diesem Artikel wird erklärt, was eine Sitzung ist, wie die Sitzung funktioniert, wie wir die Sitzung erstellen und wie wir eine bestimmte Sitzung löschen.

Außerdem wird erklärt, wie wir dafür sorgen, dass die Sitzungen automatisch starten, indem wir den Wert der Direktive session.auto_start() auf 1 setzen.

Dann wurde anhand eines Beispiels erklärt, wie man anhand von Sitzungen zählt, wie oft die Seite aufgerufen wurde. Außerdem wird erklärt, welche Bedeutung die Sitzung hat und wie sie für verschiedene Zwecke nützlich ist.

Das obige ist der detaillierte Inhalt vonSitzungen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage