PHP常量变量

tpa*_*pae 0 php

我知道这可能是一个新手问题,但有可能这样做吗?

unserialize(LOG_ACTIONS_.''.strtoupper($language));
Run Code Online (Sandbox Code Playgroud)

我有_LANGUAGE的常量列表,我想使用变量$ language.

例:

unserialize(LOG_ACTIONS_ENGLISH);
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

Fatal error: Call to undefined function LOG_ACTIONS_strtoupper()
Run Code Online (Sandbox Code Playgroud)

Pek*_*ica 7

使用constant()来获取常量的实际值.

unserialize(constant(LOG_ACTIONS_.''.strtoupper($language)));
Run Code Online (Sandbox Code Playgroud)

我不确定将数据序列化为常量是否真的很明智 - 如果其中包含大量数据,则可能会很昂贵.

我假设它是为了规避常量不能包含数组值的限制.这个问题显示了一些更好的方法来解决这个问题:

在PHP中定义全局常量数组的最"优雅"方法是什么