正文:
上文 (谈谈 PHP 语法(3) 的最后提到了 Cookie 和 Session, 本文就这两种技术作一些介绍
Cookie 我们都常把它念成库记, 也叫它小甜点它是一种存储在客户浏览器中的一个小文件它是为解决 HTTP 的一次连接而无崐记忆而发展起来的, 可用来追踪使用者或是对重返的使用者进行确认 PHP 对此提供了 setcookie()函数, 可以设定 Cookie 因为 Cookies 算是崐 HTTP 标头的一部分所以, setcookie()函数必须在网页数据传给浏览器之前调用这同调用 header()函数是一样的
Cookie 必须由主机端提供; 所以, 我们必须在 CGI 程序中送出一个设定了 cookie 的标头如下是 PHP 中调用 setcookie()函数设定 cookie 的崐例子:
- setcookie("user","wind",time()+3600,"/php/","http://www.oso.com.cn");
- ?>
其中, user 为该 cookie 的名称; wind 为该 cookie 的值; time()+3600 为该 cookie 的有效时间;/php / 为该 cookie 的相关路径; http://www. 崐 oso.com.cn 为该 cookie 的网站
其实, 我们除了使用这种方式设定 cookie 外, 还可使用 header()函数如: header("Set-Cookie:user=wind"), 不过这要对 HTTP 的头部信崐息有所了解才行, 所以笔者不建议使用这种方式, 还是使用 setcookie()方便些
读取 cookie 时, 浏览器在连接某个网站时, 会自动先检查是否有该站的 cookie, 有的话将会自动传给服务器, 而在 PHP 中, 会将传回的 co 崐 okie 作为一个变量如上面所设的 cookie 返回后, 会形成一个 $user 变量, 其值为 wind
但是, cookie 有个致命的缺点, 就是若客户关了 cookie 接收, 无法向客户端存放 cookie 时, 一切操作就会出错因此, 在 PHP4 中提供了 S 崐 ession 来代替 Cookie
Session 与 Cookie 的最大区别在于 Cookie 将信息存于客户端, 而 Session 则是存于服务器端其实, Session 是对 PHP 脚本提供了一个全局崐变量例子如下:
设置一个 Session, 名为 user, 值为 wind
- session_start();
- $user="wind";
- session_register("user");
- ?>
读 Session, 显示结果为欢迎你! wind
- session_start();
- echo "欢迎你!$user";
- ?>
本文只是浅谈了一下 Cookie 和 Session 技术, 对于想具体了解该技术的人, 还请参考别的书藉
--(待续)--
来源: https://www.php1.cn/detail/php-c835d22a64.html