phpbb 3.1 在两个页面之间传递变量

phpbb 3.1 passing variable between 2 pages

在 phpbb3.1 中,他们似乎禁用了更多的超全局变量。 我试过在使用会话之间传递变量,但没有成功。

$_SESSION['example'] = 'example';
$example = $_SESSION['example'];

由于 phpbb 禁用了超全局变量,因此没有任何内容被存储。在页面之间传递变量的下一个最佳和最安全的方法是什么?

我不确定 $_SESSION 是否包含在内,但试试 phpBBs request class...

$example = $request->variable('example','');

class 的文档在这里 - https://wiki.phpbb.com/PhpBB3.1/RFC/Request_class

你可能想看看 ,我在其中解释说你也可以暂时(或全局)切换 Superglobals 回来:

全球

打开 /phpbb/config/parameters.yml 文件并将 core.disable_super_globals 键从 true 更改为 false

以编程方式

这是一个示例代码,可用于临时启用超全局变量(每个请求 范围):

// temporarily enable superglobals
$request->enable_super_globals();

// TODO: do your stuff here.

// disable superglobals again
$request->disable_super_globals();

您还可以阅读我就此主题撰写的 this blog post 以获取更多信息。