首頁 > 後端開發 > PHP問題 > php中session是什麼意思?怎麼使用?

php中session是什麼意思?怎麼使用?

王林
發布: 2023-02-23 17:20:02
原創
6593 人瀏覽過

php中session是什麼意思?怎麼使用?

PHP Session 概述

session 是客戶與網站(伺服器)更安全的對話方式。一旦開啟了 session 會話,便可以在網站的任何頁面使用(保持)這個會話,從而讓訪客與網站之間建立了一種「對話」機制。

常見的網路購物車,就是一個session會話的典型應用。我們在預定商品的時候,將選擇好的商品放入購物車,實際就是開啟一個商品的session會話。如果對選擇的商品下了訂單,則會將對應資訊寫入資料庫;如果最終沒有下訂單,在使用者關閉瀏覽器或退出登陸的時候,則會關閉session會話,選擇的商品隨即失效。

session 會話會為每一個開啟了 session 會話的訪客建立一個唯一的會話 ID ,用於識別使用者。此會話 ID 可能儲存於使用者電腦的 cookie 內,也可能透過 URL 來傳遞。而對應的特定 session 值會儲存於伺服器端,這也是與 cookie 的主要區別,且安全性相對較高。

相關專題推薦php session (包含圖文、影片、案例)

建立session

要建立session ,必須先使用session_start() 函數開啟一個session 會話,系統會分配一個會話ID:

<?php
session_start();
?>
登入後複製

使用session_register() 函數註冊一個session 變量,成功返回TRUE ,否則返回FALSE 。

語法:

bool session_register( mixed name [, mixed ...] )
登入後複製

使用 session_register() 函數可以在目前會話下註冊一個或多個全域 session 變數。

範例:

<?php
session_start();
$username = "xiaoli";
session_register("username");
?>
登入後複製

在該範例中,我們向 session 註冊了一個名為 username 的變量,其值為 xiaoli 。

讀取 session

PHP 內建的 $_SESSION 變數可以很方便的存取設定的 session 變數。

範例:

<?php
session_start();
echo "登记的用户名为:".$_SESSION["username"];    //输出 登记的用户名为:xiaoli
?>
登入後複製

銷毀session

可以透過session_unregister() 函數來註銷單一session 變數或使用session_unset() 來註銷整個session 會話。

範例:

<?php
session_start();
session_unregister("username");    //注销 session 变量
session_unset();                    //注销 session 会话
?>
登入後複製

另一種方式

可以透過直接新增$_SESSION 陣列成員的方式註冊session 變數:

<?php
session_start();
$_SESSION["username"] = "xiaoli";
?>
登入後複製

如果要登出這種方式註冊的session 變量,需要使用unset() 函數:

<?php
session_start();
unset($_SESSION["username"]);
?>
登入後複製

讀取session 變數與銷毀session 會話則同前面的方式相同。

提示:無法使用 unset() 來銷毀 session 會話。

更多相關問題請造訪PHP中文網:PHP影片教學

#

以上是php中session是什麼意思?怎麼使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板