- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP学习笔记(四):高级教程:Cookies,Sessions,邮件,错误处理,异常处理,过滤器解析
PHP 学习笔记(四):高级教程:Cookies,Sessions,邮件,错误处理,异常处理,过滤器
PHP Cookies
cookie 常用于识别用户。
什么是 Cookie?
cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。
每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。
如何创建 cookie?
setcookie() 函数用于设置 cookie。
注释:setcookie() 函数必须位于 html 标签之前。
语法
setcookie(name, value, expire, path, domain);
1
例子
在下面的例子中,我们将创建名为 “user” 的 cookie,把为它赋值 “Alex Porter”。我们也规定了此 cookie 在一小时后过期:
?php
setcookie(user, Alex Porter, time()+3600);
?
html
body
/body
/html
注释:在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码(为防止 URL 编码,请使用 setrawcookie() 取而代之)。
如何取回 Cookie 的值?
PHP 的 $_COOKIE 变量用于取回 cookie 的值。
在下面的例子中,我们取回了名为 “user” 的 cookie 的值,并把它显示在了页面上:
?php
// Print a cookie
echo $_COOKIE[user];
// A way to view all cookies
print_r($_COOKIE);
?
在下面的例子中,我们使用 isset() 函数来确认是否已设置了 cookie:
html
body
?php
if (isset($_COOKIE[user]))
echo Welcome . $_COOKIE[user] . !br /;
else
echo Welcome guest!br /;
?
/body
/html
如何删除 cookie?
当删除 cookie 时,您应当使过期日期变更为过去的时间点。
?php
// set the expiration date to one hour ago
setcookie(user, , time()-3600);
?
如果浏览器不支持 cookie 该怎么办?
如果您的应用程序涉及不支持 cookie 的浏览器,您就不得不采取其他方法在应用程序中从一张页面向另一张页面传递信息。
一种方式是从表单传递数据(有关表单和用户输入的内容,稍早前我们已经在本教程中介绍过了)。
下面的表单在用户单击提交按钮时向 “welcome.php” 提交了用户输入:
html
body
form action=welcome.php method=post
Name: input type=text name=name /
Age: input type=text name=age /
input type=submit /
/form
/body
/html
取回 “welcome.php” 中的值,就像这样:
html
body
Welcome ?php echo $_POST[name]; ?.br /
You are ?php echo $_POST[age]; ? years old.
/body
/html
PHP Sessions
PHP session 变量用于存储有关用户会话的信息,或更改用户会话的设置。
Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
PHP Session 变量
当您运行一个应用程序时,您会打开它,做些更改,然后关闭它。这很像一次会话。计算机清楚你是谁。它知道你何时启动应用程序,并在何时终止。但是在因特网上,存在一个问题:服务器不知道你是谁以及你做什么,这是由于 HTTP 地址不能维持状态。
通过在服务器上存储用户信息以便随后使用,PHP session 解决了这个问题(比如用户名称、购买商品等)。不过,会话信息是临时的,在用户离开网站后将被删除。如果您需要永久储存信息,可以把数据存储在数据库中。
Session 的工作机制是:为每个访问者创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或通过 URL 进行传导。
开始 P
原创力文档


文档评论(0)