1

我对 jQuery mobile 很陌生,但我很喜欢使用它!我遇到了一些关于我正在努力解决的缓存问题。

我有一个 php 文件,其中包含以下define内容:

define('HEADING_TITLE', 'Page 1');

该文件加载在网站的第 1 页上。当我回显 HEADING_TITLE 时,我看到“第 1 页”。

第 2 页需要一个不同的 php 文件来覆盖 HEADING_TITLE,如下所示:

define('HEADING_TITLE', 'Page 2');

当我回显 HEADING_TITLE 时,我仍然看到“第 1 页”。我知道正在处理第 2 页定义,因为如果我die(HEADING_TITLE);在定义之后立即添加该行,脚本确实会死,但仍然显示“第 1 页”!

如何让 jQuery mobile 允许我覆盖 HEADING_TITLE 变量?还是我需要以另一种方式解决这个问题?创建不同的定义变量,如 PAGE1_HEADING_TITLE 和 PAGE2_HEADING_TITLE 没问题,但如果有更好的方法,我很想知道。

4

1 回答 1

1

简短的回答是您不能覆盖 define,它们被称为常量是有原因的。长答案是,你可以在运行时,但它是 hacky 和一个坏主意。

如果您选择在运行时覆盖常量,请这样做:

runkit_constant_redefine("HEADING_TITLE", 'Page 2');
于 2012-07-13T17:11:52.913 回答