在lang.php文件中有以下数组。
"animal" => [
"mammel"=>[
"cat" => "Cat",
"ele" => "Elephant",
"dog" => "Dog"
]
]
$r_animal = str_ireplace($lm, trans('lang.animal.mammel')[strtolower(substr($lm, 0, 3))], $r_animal);
在上面的行中,将错误作为非法字符串偏移量"ele"。
要访问翻译,您需要trans('lang.animal.mammel.cat')
、trans('lang.animal.mammel.ele')
或trans('lang.animal.mammel.dog')
之类的内容。假设strtolower(substr($lm, 0, 3))
包含"cat"、"ele"或"dog",则可以连接所需的翻译密钥,如下所示:
$translationKey = 'lang.animal.mammel.' . strtolower(substr($lm, 0, 3));
$r_animal = str_ireplace($lm, trans($translationKey), $r_animal);