php session_cache_limiter session_cache_expire等函数

session_cache_limiter() 返回当前缓存限制的名字. 如果指定了 cache_limiter, 当前的缓存限制的名字被改为新值.

缓存限制控制着 http 头发送到客户端的缓存控制. 这些确定页面内容规则的头内容可以被缓存.如果设置缓存设置为没有缓存(nocache), 将不允许任何客户端缓存. 但是公共变量可以允许缓存. 他也可以设置为私有的,这个比公共的多一点限制.

缓存显示在请求开始时被重新设置为 session_cache_limiter 的默认值.这样,你需要在每次请求时调用 session_cache_limiter() for every request (在 session_start() 调用前).

设置cache限制为 private

  1. */
  2. session_cache_limiter('private');
  3. $cache_limiter=session_cache_limiter();
  4. /*设置session的过期时间为30秒*/
  5. session_cache_expire(30);
  6. $cache_expire=session_cache_expire();
  7. /*初始化session*/
  8. session_start();
  9. /*输出结果内容*/
  10. echo "当前的session cache限制被设置为:$cache_limiter<br />";
  11. echo "当前的session过期时间为:$cache_expire minutes";
  12. /*
  13. 输出结果为:
  14. the cache limiter is now set to private
  15. the cached session pages expire after 30 minutes
  16. */
  17. //实例二
  18. /*设置caceh限制者为'private'*/
  19. session_cache_limiter('private');
  20. /*返回caceh限制者*/
  21. $cache_limiter=session_cache_limiter();
  22. echo "当前的session cache限制被设置为:$cache_limiter<br />";
  23. //实例三
  24. $filename="test.mpeg";
  25. $filepath="test.mpeg";
  26. session_start();
  27. /*初始化session*/
  28. session_commit();
  29. /*输出请求的文件*/
  30. header("content-type: audio/x-mpeg"); //或者其他类型的文件
  31. header("content-disposition:attachment;filename=".$filename);
  32. header("content-length:".$filesize);
  33. header("content-transfer-encoding:binarynn");
  34. header("pragma:no-cache");
  35. header("expires:0");
  36. $file_contents=file_get_contents($filepath);
  37. print($file_contents
  38. );