我对php中的会话和cookie之间的关系有一个模糊的理解。根据我的理解,cookie应该有助于在服务器端为客户端实现会话,但我需要澄清我今天进行的一些实验。
<?php
session_start();
setcookie("userCookie", "myCookie");
if( isset($_GET["sessName"]) && isset( $_GET["sessValue"] ) ) {
$_SESSION[filter_input(INPUT_GET, "sessName")] = filter_input(INPUT_GET, "sessValue");
}
foreach ($_SESSION as $sessNames){
echo $sessNames;
}
?>
<form method="GET">
<input type="text" name="sessName" placeholder="Session Name">
<input type="text" name="sessValue" placeholder="Session value">
<input type="Submit" >
</form>
?>
如果我在会话名称中提供值“foo”并提交,则稍后从浏览器“chrome”中删除userCookie,用户输入仍将保留在会话中。但是如果我从浏览器中删除“PHPSSID”cookie而留下“userCoookie”,则用户输入将丢失。 这让我想到了一个问题,即在向客户端发送多个cookie时可以获得什么样的实际好处或用途“PHP从session_start开始管理cookie()
答案 0 :(得分:0)
如果您使用$_SESSION
,则无需设置任何Cookie。
PHP使用PHPSSID
cookie来跟踪会话。