我正在研究用多种语言编写的产品列表。我为每个产品都有一个数组,显示其语言,如下所示:
Array ( [0] => DA [1] => DE [2] => EN [3] => ES [4] => FI [5] => FR [6] => IT [7] => JA [8] => KO [9] => NL [10] => NO [11] => PL [12] => PT [13] => RU [14] => SV [15] => ZH )
我需要用它们的语言名称替换这些单独的代码(因此 EN => 英语)。我有以下代码,它可以很好地处理常规字符串,但我无法让它与该数组一起工作。有什么想法吗?
$trans = array(
"EN" => "English",
"ZH" => "Chinese",
"DA" => "Danish",
"NL" => "Dutch",
"FI" => "Finnish",
"FR" => "French",
"DE" => "German",
"IT" => "Italian",
"JA" => "Japanese",
"KO" => "Korean",
"NO" => "Norwegian",
"PL" => "Polish",
"PT" => "Portuguese",
"RU" => "Russian",
"ES" => "Spanish",
"SV" => "Swedish",
);
echo strtr($langcodes, $trans);
$langcodes 保存数组值。
最佳答案
证明它有效:http://codepad.org/PR5pPqcX
@David 看看我的回答。见下文。如果我是对的,请相信我,以便我获得积分。积分激励我回答更多问题。
$language_codes = array(0 => 'DA', 1 => 'DE', 2 => 'EN', 3 => 'ES', 4 => 'FI', 5 => 'FR', 6 => 'IT', 7 => 'JA', 8 => 'KO', 9 => 'NL', 10 => 'NO', 11 => 'PL', 12 => PT, 13 => 'RU', 14 => 'SV', 15 => 'ZH' );
$trans = array(
"EN" => "English",
"ZH" => "Chinese",
"DA" => "Danish",
"NL" => "Dutch",
"FI" => "Finnish",
"FR" => "French",
"DE" => "German",
"IT" => "Italian",
"JA" => "Japanese",
"KO" => "Korean",
"NO" => "Norwegian",
"PL" => "Polish",
"PT" => "Portuguese",
"RU" => "Russian",
"ES" => "Spanish",
"SV" => "Swedish",
);
foreach ($language_codes as $key => $code)
if (!empty($trans[$code]))
$language_codes[$key] = $trans[$code];
var_dump($language_codes);
关于php - strstr 替换数组中的多个变量 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6472027/