让PHP支持页面回退的两种方法[转]

yipeiwu_com6年前PHP代码库
在开发过程中,往往因为表单出错而返回页面的时候填写的信息都不见了,为了支持页面回跳,可以通过两种方法实现。
第一,使用Header方法设置消息头Cache-control


header('Cache-control: private, must-revalidate');  //支持页面回跳  



第二,使用session_cache_limiter方法


//注意要写在session_start方法之前 
session_cache_limiter('private, must-revalidate');  




PS:Cache-Control消息头域说明
Cache-Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理过程中的缓存处理过程。请求时的缓存指令包括no-cache、no-store、max-age、max-stale、min-fresh、only-if-cached,响应消息中的指令包括public、private、no-cache、no-store、no-transform、must-revalidate、proxy-revalidate、max-age。各个消息中的指令含义如下: 

Public指示响应可被任何缓存区缓存。 
Private指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息,此响应消息对于其他用户的请求无效。 
no-cache指示请求或响应消息不能缓存 
no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。 
max-age指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。 
min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。 
max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以接收超出超时期指定值之内的响应消息。 

相关文章

php中rename函数用法分析

本文实例分析了php中rename()函数用法。分享给大家供大家参考。具体如下: php filesystem 函数,rename() 函数重命名文件或目录,若成功,则该函数返回 tru...

golang与php实现计算两个经纬度之间距离的方法

本文实例讲述了golang与php实现计算两个经纬度之间距离的方法。分享给大家供大家参考,具体如下: golang版本: 复制代码 代码如下:package main import (...

ajax 的post方法实例(带循环)

ajax 的post方法实例(带循环)

用上循环就是为了在数据发送前进行合理的处理,解决在脚本语言对数据进行另外需求处理时出现的超时现象。处于对ajax认识未深,如有说得不对或不到位的,还请指教。     ajax中的po...

深入讲解PHP的对象注入(Object Injection)

深入讲解PHP的对象注入(Object Injection)

前言 虽然这篇文章叫做PHP对象注入,但是本质上还是和PHP的序列化的不正确使用有关。如果你阅读了PHP中的SESSION反序列化机制对序列化就会有一个大致的认识。PHP对象注入其实本质...

PHP滚动日志的代码实现

PHP滚动日志类库 PHP记录日志,我之前接触过的有按照年月分文件夹,然后按照日分文件的日志记录方式,这种方式有利有弊,有他的使用场景,我今天要说的是另一种日志记录方式——文件滚动方式记...