【问题标题】:PHP seems to be caching my codePHP 似乎正在缓存我的代码
【发布时间】:2013-12-31 09:22:55
【问题描述】:

我目前正在测试一个 Web 应用程序,并且一直注意到我的更改在每次保存 PHP 文件后都没有更新。

据我所知,我没有使用当前的 PHP 缓存解决方案。我正在使用新的 CodeIgniter 副本运行 PHP 5.5.3。

事情是这样的:

  • 我注意到 PHP 似乎没有加载我所做的最新代码更改
  • 注意到问题后,我将<?php echo time();?> 输出到我的所有视图文件中
  • 现在,每次页面加载都会更新时间 - 表明 PHP 正在处理每个页面的代码
  • 但有时页面代码更新直到 3-5 个页面加载后才会发生
  • 我已尝试多次禁用和清空浏览器缓存

鉴于time() 输出正在更新这一事实,我认为这是 PHP 问题而不是浏览器问题是否正确?

【问题讨论】:

  • 可能是网络问题...
  • 您是通过 cli 还是通过 Web 服务器运行此代码?
  • @ebadedude 我在我的本地机器上运行它。不过,它确实与 MySQL 数据库建立了远程连接。
  • @Shawn 这是通过 Apache 和我的网络浏览器运行的。
  • 您是否安装了 xdebug,如果为 true,则分析您的代码,这应该可以很好地提示您的情况。

标签: php codeigniter caching


【解决方案1】:

这很令人沮丧。事实证明,MAMP 现在已安装并默认启用 Zend OpCache - 请参阅 Stop caching for PHP 5.5.3 in MAMP

【讨论】:

    【解决方案2】:

    PHP 不缓存任何内容。

    如果time() 正在更新,您就知道不存在传统的缓存问题。

    如果您使用 NFS 之类的东西,您可能正在处理文件系统缓存。这可以解释 3-5 秒的延迟。

    【讨论】:

    • 无 NFS 连接 - 这是在我的 Mac 硬盘上运行的。只需使用我的标准本地开发机器。
    • @JackW-H 你安装了哪些扩展?任何操作码缓存?你是如何运行 PHP 的?快速CGI?
    • 我今天刚刚在一台新机器上安装了 MAMP。安装的唯一扩展将是此处列出的扩展之一:mamp.info/en/mamp/index.html
    猜你喜欢
    • 2016-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多