繁体   English   中英

从常量创建变量

[英]Create variable from constant

我想省略创建无数的if/else语句,而改用预定义的变量(或常量)。

DEFINE('LANG',$current_lang);

它返回plen 现在我有两个变量:

$pl = getid('o-nas');
$en = pll_get_post($pl, 'en');

如何打印我之前使用LANG定义的内容? 还是有更好的解决方案? 请注意,我将遇到多种此类情况,但LANG始终是这两种情况之一。

这种情况下的变量变量语法为:

define('FOO', 'bar');

$foo = 'baz';
$bar = 42;

echo ${FOO}; // 42

请注意,这不一定是i18n的最佳方法,但它回答了您的直接问题。
改善此问题的第一步可能只是将数组用于启动器:

$content = [
    'en' => ..,
    'pl' => ..
];
echo $content[LANG];

这里的意图和语法更加明显和可读。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM