-1
有两个变量,但一个是另一个的变量。现在我想打印翻译的变量到页面。PHP中两个组合变量的新变量的打印值
$name = "blabla";
$name_en = "this is english blabla";
$locale = "_en";
echo $name.$locale;
它打印blabla_en而不是 “这是英语布拉布拉”
有两个变量,但一个是另一个的变量。现在我想打印翻译的变量到页面。PHP中两个组合变量的新变量的打印值
$name = "blabla";
$name_en = "this is english blabla";
$locale = "_en";
echo $name.$locale;
它打印blabla_en而不是 “这是英语布拉布拉”
一种解决方案是variable variables:
$name = "blabla";
$name_en = "this is english blabla";
$locale = "_en";
echo ${'name'.$locale}; // set variable name as static string and locale suffix
一个更好解决方案是使用arrays
:
$messages = [
'blabla' => [
'de' => 'blabla',
'en' => 'this is english blabla'
]
];
$locale = "en";
echo $messages['blabla'][$locale];
谢谢。我会接受 – yigitozmen
什么你正在寻找被称为[变量变量](http://php.net/manual/en/language.variables.variable.php) – imtheman