Laravel 定数の設定方法

Laravelにおける定数の設定方法

Laravelで定数を扱うときは、定数用のクラスを作成すると簡単にわかりやすく扱うことができます。

 

実装例

※今回のフォルダ構成やファイル名は一例ですので、任意の名前に変更していただいて問題ありません。

 

1:固定ページ用のクラスファイルを作成します。

今回は、App配下にConstsディレクトリを作成し、その中に定数用のクラスファイルを作成しました。

App\Consts\RadioStationsConst.php

<?php
namespace App\Consts;

class RadioStationsConst
{
   public const RADIO_STATIONS_CONST = [ ・・・①
     'ニッポン放送',
     '文化放送',
     'TokyoFM'
   ];
}

①public constで定数を設定します。

 

2:設定したクラスファイルをAliaseに設定します

config\app.phpのaliasesに作成したクラスファイルを設定します。

app.php(aliasesの部分のみ)

'aliases' => [ 
 'App' => Illuminate\Support\Facades\App::class,
 'Arr' => Illuminate\Support\Arr::class,
 'Artisan' => Illuminate\Support\Facades\Artisan::class,
 'Auth' => Illuminate\Support\Facades\Auth::class,
 'Blade' => Illuminate\Support\Facades\Blade::class,
 'Broadcast' => Illuminate\Support\Facades\Broadcast::class,
 'Bus' => Illuminate\Support\Facades\Bus::class,
 'Cache' => Illuminate\Support\Facades\Cache::class,
 'Config' => Illuminate\Support\Facades\Config::class,
 'Cookie' => Illuminate\Support\Facades\Cookie::class,
 'Crypt' => Illuminate\Support\Facades\Crypt::class,
 'Date' => Illuminate\Support\Facades\Date::class,
 'DB' => Illuminate\Support\Facades\DB::class,
 'Eloquent' => Illuminate\Database\Eloquent\Model::class,
 'Event' => Illuminate\Support\Facades\Event::class,
 'File' => Illuminate\Support\Facades\File::class,
 'Gate' => Illuminate\Support\Facades\Gate::class,
 'Hash' => Illuminate\Support\Facades\Hash::class,
 'Http' => Illuminate\Support\Facades\Http::class,
 'Lang' => Illuminate\Support\Facades\Lang::class,
 'Log' => Illuminate\Support\Facades\Log::class,
 'Mail' => Illuminate\Support\Facades\Mail::class,
 'Notification' => Illuminate\Support\Facades\Notification::class,
 'Password' => Illuminate\Support\Facades\Password::class,
 'Queue' => Illuminate\Support\Facades\Queue::class,
 'Redirect' => Illuminate\Support\Facades\Redirect::class,
 // 'Redis' => Illuminate\Support\Facades\Redis::class,
 'Request' => Illuminate\Support\Facades\Request::class,
 'Response' => Illuminate\Support\Facades\Response::class,
 'Route' => Illuminate\Support\Facades\Route::class,
 'Schema' => Illuminate\Support\Facades\Schema::class,
 'Session' => Illuminate\Support\Facades\Session::class,
 'Storage' => Illuminate\Support\Facades\Storage::class,
 'Str' => Illuminate\Support\Str::class,
 'URL' => Illuminate\Support\Facades\URL::class,
 'Validator' => Illuminate\Support\Facades\Validator::class,
 'View' => Illuminate\Support\Facades\View::class,
 'Image' => Intervention\Image\Facades\Image::class,
 'RadioStationsConst' => App\Consts\RadioStationsConst::class, ・・・①
],

①キーにaliase名、値に作成したクラスファイルを指定します。

これで、「RadioStationsConst」で定数が利用できます。

 

3:(使用例)Bladeテンプレートで使用

以下Bladeテンプレートでの使用例になります。

@foreach(RadioStationsConst::RADIO_STATIONS_CONST as $radioStation)
  <p>{{ $radioStation }}</p>
@endforeach

 

以上!!!!!!!