PHP入门速成(3)_php基础

分享到:

小结

通过以上三步,我们使用PHP快速地在单一页面上实现了表单显示和表单处理的功能。


设定Cookies

PHP提供了强大的设定和读取Cookies的功能。在此,我们不想对Cookies进行过多的介绍,但是用户应当认识到在设计WEB应用的过程中Cookies可能起到的重要作用。

用户可以使用PHP提供的setcookie()函数创建或修改Cookie。setcookie()函数总共包括6个参数,能够对cookie进行精确的控制。

使用setcookie()函数设定cookie的最简单的方式为:

setcookie(‘name', ‘PETER');

这样,在用户访问整个站点页面的期间,PHP将会自动创建一个名为$name的变量,并将值PETER赋予该变量。我们把这种Cookie称做会话Cookie,即其作用域为用户的整个会话过程。

如果我们希望Cookie值在访问用户离开站点后仍然有效的话,可以使用setcookie()函数的相应参数,设定Cookie的有效期。这里,我们需要对PHP的时间设定进行一下说明。PHP是一种基于Unix开发出的技术,用户需要用自1970年1月1日之后的秒数表示当前时间。对于没有任何Unix系统编程经验的广大普通用户来说真是有点摸不着头脑。不过,大家大可不必担心,因为PHP为我们提供了一个非常简便的解决方式,即mktime()函数。用户可以在mktime()函数中按照小时、分、秒、月、日、年的顺序输入用户希望表示的时间,mktime()函数将会返回该时间距离1970年1月1日的秒数。举例来说,如果我们希望设定一个有效期持续到2000年的Cookie的话,可以使用如下方式:

< ?php

$y2k = mktime(0,0,0,1,1,2000);

setcookie(‘name', ‘PETER', $y2k);

? >

如果用户希望更新已经存在的cookie,可以采用简单的直接覆盖原值的方法。例如,即使我们已经按照上述代码对cookie进行了设定,仍可以对其做以下改动:

< ?php

$y2k = mktime(0,0,0,1,1,2000);

setcookie(‘name', ‘JEFF', $y2k);

? >

这里需要提醒用户注意的一点是,虽然我们对cookie值进行了修改,但是在没有加载经过修改的页面之前,PHP中$name变量的值仍然不会改变。如果用户希望在更改cookie值的同时更改 相应PHP变量的值,可以采用以下方式:

< ?php

$name = ‘JEFF';

$y2k = mktime(0,0,0,1,1,2000);

setcookie(‘name', $name, $y2k);

? > 在有效期参数之后,setcookie()函数提供了设置可以读取cookie值的页面的路径和域的参数。出于安全因素的考虑,在默认情况下,只有与设定cookie的页面处于同一目录或下属子目录的页面才能够读取相应cookie值。但是,根据需要,我们也可以对这一设定进行修改。例如:

< ?php

setcookie(‘name', ‘jeff', $y2k, ‘~/myhome', ‘.domain.com');

? >

通过上述代码,我们设定凡是位于~/myhome目录下,属于.domain.com域的页面都能够读取该cookie值。
setcookie()函数的最后一个参数较少被使用。该参数可以指定只向运行安全连接协议,如SSL,的WEB服务器返回cookie值。如果用户希望启动该参数功能,只需要将其值设为1即可。
使用PHP删除cookie也非常简便,用户只需要在setcookie()函数中输入希望删除的cookie的名称,PHP就会自
昵    称:
验证码:

相关文档: