首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP Session 入門教學:跨頁面傳遞用戶資料完整範例

     編輯:PHP 綜合知識

核心概念

Session 在伺服器端儲存用戶資料,透過 Cookie 傳遞 Session ID 實現跨頁面狀態保持。每頁開頭必須呼叫 session_start()。

範例:兩頁面傳遞用戶名

index.php(設定 Session)

<?php
session_start();
$_SESSION['name'] = "zhang3";
echo "<a href='page2.php'>透過 Session 傳遞用戶 zhang3,顯示歡迎訊息</a>";
?>

page2.php(讀取 Session)

<?php
session_start();
echo $_SESSION["name"] . " 歡迎你!" . "<a href='index.php'>返回</a>";
?>

常用 Session 操作

操作代碼說明
啟動session_start()每頁必須最先呼叫,輸出前
寫入$_SESSION['key'] = $val陣列語法,支援多維
讀取$val = $_SESSION['key']不存在返回 NULL
檢查存在isset($_SESSION['key'])避免 Notice
刪除單項unset($_SESSION['key'])仅移除該鍵
銷毀整個 Sessionsession_destroy()登出時使用,配合 $_SESSION = array()
設定存活時間ini_set('session.gc_maxlifetime', 3600)秒數,需在 session_start() 前

安全建議

  • 使用 session_regenerate_id(true) 登入後重新生成 ID,防 Session Fixation。
  • 敏感資料勿直接存 Session,改存資料庫記錄 ID。
  • HTTPS 環境設定 session.cookie_secure = 1、session.cookie_httponly = 1。
  • 自定義儲存處理器(session_set_save_handler)將 Session 存入 Redis/Memcached/DB,支援叢集。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved