Laravelの__( )
の処理内容について。
▼こういうの
@if(__('career.'. $career_slug .'.is_recruiting') === "false")
//処理
@endif
@include('partials.jumbotron', ['title' => __('page.recruit.career.'. $career_slug .'.title')])
__()の意味
__ヘルパ関数
と呼ぶ。Lang::get
の省略形。
現在設定中の言語ファイルから、指定したデータを呼び出すときに使用する。
現在設定中の言語
config > app.php の中の locale
を参照。
日本語の場合は以下のようになっている。
'locale' => 'ja',
言語ファイルの場所
resources > lang配下。
enはデフォルトでプロジェクトを作成した状態。
jaが後から追加したもの。
__()の使い方
例えば、言語設定が'locale' => 'ja'
のときに使うと、jaディレクトリの指定したファイルのデータを取得する。
・__('ファイル名')
ファイルの中のデータをごっそり取得
・__('ファイル名.プロパティ名')
指定したプロパティのデータを取得
実例
@php
$career_slug = 'editor'
@endphp
@if(__('career.'. $career_slug .'.is_recruiting') === "false")
//処理
@endif
上記処理を確認すると、
__('career.'. $career_slug .'.is_recruiting')`
carrer.phpの、editorプロパティ($career_slug
)の、is_recruitingプロパティの値を取得している。
<?php
return [
'editor' => [
'is_recruiting' => 'false',
'position' => "編集",
'job_description' => "ライティング業務です"
],
];
つまり、取得したデータはfalse
となる。
@if(__('career.'. $career_slug .'.is_recruiting') === "false")
@if
の条件式がtrueになるので処理が実行される。