2014-03-28 143 views
0

我是新来的php,我遇到了cookie和持久性cookie,我明白它们之间的区别。我的问题是,如何让cookie持久或临时。我发现只有一种语法的cookie持久性cookie vs临时cookie

<?php 
setcookie("user", "Alex Porter", time()+3600); 
?> 

感谢

+1

关闭浏览器时,临时cookie会被删除。没有饼干是永远的。 “*如果设置为0或省略,cookie将在会话结束时过期(当浏览器关闭时)。*” – h2ooooooo

+0

@ h2ooooooo我的问题是上面的cookie是临时的或持久的 – user3106347

+0

它是“持久性”,因为您指定到期日期。 – h2ooooooo

回答

1

Phisically来说,只有一种饼干。您可以通过选择足够长的到期时间来使其持续。如果到期时间设置为0,则Cookie将持续到您的页面在浏览器中打开为止。

您的示例Cookie是持久性的,它将在一小时后过期。

Here是一个简短的解释链接。

很可能你很难访问硬盘上的物理cookie,因为borwsers将它们存储在它们的内部逻辑中。例如,Firefox将Cookie存储在浏览器的配置文件文件夹中的本地SQLite数据库文件中。

+0

因此上面的代码将在我的硬盘中创建文件,路径是什么 – user3106347

+0

每个cookie都存储在硬盘上,同时会话cookies。但不一定在“文件”中,例如FF将cookie存储在本地数据库文件中。 –

0

创建cookie时,第三个参数(在您的示例中为time()+3600)指定了cookie的到期日期。

time()+3600表示现在+ 3600秒,这是将来1小时。 Time()函数以秒为单位返回当前时间(unix时间)。

没有这样的东西,真正永久的cookie,更像是在未来的cookie中过期。