当前位置: 代码迷 >> PHP >> PHP文件为什么会有缓存,并且只有在谷歌
  详细解决方案

PHP文件为什么会有缓存,并且只有在谷歌

热度:52   发布时间:2016-04-28 19:13:11.0
PHP文件为什么会有缓存,而且只有在谷歌
SingleLink.class.php

<?php
class Hero{
    private $id;
    private $name;
    private $nickname;
    private $next = null;
    public function getId() {
        return $this->id;
    }

    public function setId($id) {
        $this->id = $id;
    }

    public function getName() {
        return $this->name;
    }

    public function setName($name) {
        $this->name = $name;
    }

    public function getNickname() {
        return $this->nickname;
    }

    public function setNickname($nickname) {
        $this->nickname = $nickname;
    }

    public function getNext() {
        return $this->next;
    }

    public function setNext($next) {
        $this->next = $next;
    }

    function __construct($id="",$name="",$nickname=""){
        $this->id = $id;
        $this->name = $name;
        $this->nickname = $nickname;
    }
}
?>

test.php

<?php
header("Cache-Control: no-cache, must-revalidate");
require_once 'SingleLink.class.php';
$head = new Hero();
$hero = new Hero(1,"宋江","及时雨");
echo $hero->getName();
?>





第一次运行并不是缓存,运行结果是”宋江“。我把 $hero = new Hero(1,"宋江","及时雨"); 改成 $hero = new Hero(1,"宋江222","及时雨"); 运行结果还是”宋江“。网络分析是显示上图的frome cache。这个是谷歌的运行结果。IE下是正常的,第二次运行结果是”宋江222“。
高手帮忙分析一下,为什么CHROME会出现这种缓存。

------解决方案--------------------
如果缓存是 php 造成的,那么不管是什么浏览器都会有缓存
而你只是在特定的浏览器上出现缓存,显然与该浏览器设置有关
当然也不排除他不能响应你阻止缓存的指令
  相关解决方案