Wil*_*urb 4 multilingual laravel blade
我正在翻译使用Blade模板的Laravel网站,并想知道是否有更好的方法来翻译链接,如下所示:
应用程序/郎/ EN/contact.php:
return [
'1' => 'text before link',
'2' => 'link text',
'3' => 'text after link'
];
Run Code Online (Sandbox Code Playgroud)
应用程序/视图/ contact.blade.php:
<p>{{ Lang::get('contact.1') }}
<a herf="{{URL::route('home')}}">{{ Lang::get('contact.2') }}</a>
{{ Lang::get('contact.3') }}}</p>
Run Code Online (Sandbox Code Playgroud)
小智 10
这个解决方案怎么样?
刀片模板:
{!! Lang::get('test.test', [ 'url' => 'http://stackoverflow.com/' ]) !!}
Run Code Online (Sandbox Code Playgroud)
郎/ test.php的
<?php
return [
'test' => '<a href=":url">My Pretty Link</a>'
]
Run Code Online (Sandbox Code Playgroud)
您可以使用 URL 作为参数,并且只需要一个翻译条目:
应用程序/语言/en/contact.php
return [
'1' => 'text before link <a href=":url">link text</a>text after link'
];
Run Code Online (Sandbox Code Playgroud)
应用程序/视图/contact.blade.php
<p>{{ Lang::get('contact.1', URL::route('home')) }}</p>
Run Code Online (Sandbox Code Playgroud)
缺点:您的翻译中有 HTML
另一种使您的代码更清晰(但不会以任何方式更改您的翻译)的方法是使用 Laravels HTML 链接助手和trans()(别名为Lang::get()
<p>
{{ trans('contact.1') }}
{{ link_to_route('home', trans('contact.2')) }}
{{ trans('contact.3') }}
</p>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4184 次 |
| 最近记录: |