转:cookie和session(二)——php应用

时间:2023-03-09 05:39:21
转:cookie和session(二)——php应用

文章来自于:http://blog.****.net/half1/article/details/21650211

本文将介绍cookie在session在php中的基本用法。

1、cookie

1.1、创建cookie

setcookie()函数用于设置cookie,且此函数必须位于<html>标签之前。
基本语法
  1. <span style="font-family:Microsoft YaHei;">setcookie(name,value,expire,path,domain);</span>

例子

在下面的例子中,我们将创建名为 "user" 的 cookie,把为它赋值 "Alex Porter"。我们也规定了此 cookie 在一小时后过期:
  1. <?php
  2. setcookie("user", "Alex Porter", time()+3600);
  3. ?>
  4. <html>
  5. <body>
  6. </body>
  7. </html>

注释:在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码(为防止 URL 编码,请使用 setrawcookie() 取而代之)。

1.2、从cookie中取值

在下面的例子中,我们使用 isset() 函数来确认是否已设置了 cookie:
  1. <html>
  2. <body>
  3. <?php
  4. if (isset($_COOKIE["user"]))
  5. echo "Welcome " . $_COOKIE["user"] . "!<br />";
  6. else
  7. echo "Welcome guest!<br />";
  8. ?>
  9. </body>
  10. </html>

1.3、删除cookie

将过期日期变更为过去的时间点即可删除cookie:
  1. <?php
  2. setcookie("user", "", time()-3600);
  3. ?>

2、session

2.1、开始session

在把用户信息存储到session中之前,首先必须启动会话。调用session_start()函数即可。
注意:session_start()函数必须位于<html>标签之前。

2.2、存取session变量

存储和取回session变量的正确方法是使用$_SESSION变量:
  1. <?php
  2. session_start();
  3. // store session data
  4. $_SESSION['views']=1;
  5. ?>
  6. <html>
  7. <body>
  8. <?php
  9. //retrieve session data
  10. echo "Pageviews=". $_SESSION['views'];
  11. ?>
  12. </body>
  13. </html>

2.3、终结session

如果希望删除某些session数据,可以使用unset()和session_destroy()函数。
unset()函数用于释放指定的session变量,session_destroy()函数重置session。
  1. <?php
  2. unset($_SESSION['views']);
  3. session_destroy();
  4. ?>