我有一个显示不同语言国家/地区的脚本。例如,西班牙语中的“United Kingdom”将是“Reino Unido”等。每种语言都存储在不同的表中,例如西班牙语的“name_es”或英语的“name_en”。然后通过为每个用户存储的会话值选择正确的表。我有这个:
if ($countries_id)
{
$sql_select_countries = $this->query_silent("SELECT name_".$_SESSION['language']." as name FROM " . DB_PREFIX . "countries WHERE
id IN (" . $countries_id . ")");
if ($sql_select_countries)
{
while ($country_details = $this->fetch_array($sql_select_countries))
{
$countries_array[] = $country_details['name'];
}
}
}
请注意,问题在于:
$countries_array[] = $country_details['name'];
我需要它像
$countries_array[] = $country_details['name_$_SESSION['language']'];
但我无法弄清楚正确的语法:(
答案 0 :(得分:1)
所以你想把字符串'name'和session中存储的值连接起来吗?
$countries_array[] = $country_details['name_'.$_SESSION['language']];
我认为如果你添加一些语音标记和大括号,你可以这样做:
$countries_array[] = $country_details["name_{$_SESSION['language']}"];
答案 1 :(得分:0)
$countries_array[] = $country_details[$_SESSION["language"]];