PHP 新手入門session

1.什麼是session

session 變數用於儲存關於使用者會話(session)的信息,或是更改使用者會話(session)的設定。 Session 變數儲存單一使用者的信息,並且對於應用程式中的所有頁面都是可用的 

2.php session  變數

您在電腦上操作某個應用程式時,您打開它,做些更改,然後關閉它。這很像對話(Session)。計算機知道您是誰。它清楚您在何時打開和關閉應用程式。然而,在網路上問題出現了:由於 HTTP 位址無法保持狀態,Web 伺服器並不知道您是誰以及您做了什麼。

PHP session 解決了這個問題,它透過在伺服器上儲存使用者資訊以便隨後使用(例如使用者名稱、購買商品等)。然而,會話資訊是臨時的,在使用者離開網站後將被刪除。如果您需要永久儲存訊息,可以把資料儲存在資料庫中。

Session 的工作機制是:為每個訪客建立一個唯一的 id (UID),並基於這個 UID 來儲存變數。 UID 儲存在 cookie 中,或透過 URL 進行傳導。

3.開啟session

session_start();

<?php
	session_start();
	$_SESSION['name'] = "admin";
?>
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>session</title>
</head>
<body>
	
</body>
</html>

如上程式碼所示,這樣session就已經被開啟了,當我們想在session中存入資料或取出數據,首先我們就要開啟session   

session 開啟之後,存入session 的資料是可以被其他頁面呼叫的

##在session 變數中存入資料

<?php
	session_start();
	$_SESSION['name'] = "admin";
?>
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>session</title>
</head>
<body>

</body>
</html>

這樣我們就在$_SESSION['name']這個變數中,存入了一個admin的值

然後

輸出session

<?php
	session_start();
	$_SESSION['name'] = "admin";
?>
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>session</title>
</head>
<body>
	<?php
		echo "欢迎您:".$_SESSION['name']."!";
	?>
</body>
</html>

當我們在另一個文件中寫入

<?php

#     echo "歡迎你:".$_SESSION['name']."!";
?>

也是可以輸出session中name的值

銷毀session

如果您希望刪除某些session 數據,可以使用unset () 或session_destroy() 函數。

unset() 函數用來釋放指定的session 變數

session_distroy()  一般用來銷毀session

例如兩個頁面,第一個頁面,我們用到session    但是沒有關閉,到第二個頁面的時候

<?php

session_distroy();

?>

這樣session 就清空了

session   與 cookie   的差異

##1、cookie資料存放在客戶的瀏覽器上,session資料放在伺服器上。

2、cookie不是很安全,別人可以分析存放在本地的COOKIE並進行COOKIE欺騙

   考慮到安全應當使用session。

3、session會在一定時間內保存在伺服器上。當訪問增多,會比較佔用你伺服器的效能
   考慮到減輕伺服器效能方面,應使用COOKIE。

4、單一cookie儲存的資料不能超過4K,很多瀏覽器都限制一個網站最多儲存20個cookie。

5、所以個人建議:
   將登陸資訊等重要資訊存放為SESSION
   其他資訊如果需要保留,可以放在COOKIE中

繼續學習
||
<?php session_start(); $_SESSION['name'] = "admin"; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>session</title> </head> <body> </body> </html>
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!