我的应用程序中有两种可能的语言,en
和de
。
我使用Localization和json字符串翻译它。
这是一个字段验证的一部分:
if (!empty($value) && (!empty($var1) || empty($var2))) {
$fail('Hier ist ein deutscher Satz geschrieben.');
}
这是附属的json:
{
"Hier ist ein deutscher Satz geschrieben." : "Here is written an english sentence."
}
这个翻译工作正常,但如果我在这样的句子中包含$值:
if (!empty($value) && (!empty($var1) || empty($var2))) {
$fail('Hier ist ein' ".$value." ' deutscher Satz geschrieben');
}
...我不能再用json翻译了,因为我不能只是分开句子。 有没有办法可以使用动态变量翻译自定义验证规则消息?
我只是在里面放了另一个if子句,检查应用程序的$ locale是否是en
或de
。它的工作原理就是这样。
if (!empty($value) && (!empty($var1) || empty($var2))) {
if (app()->getLocale() == 'en') {
$fail('Here is written a "' .$value '" enlgish sentence.);
} else {
$fail('Hier ist ein "' .$value. '" deutscher Satz geschrieben');
}
}