#概要
ローカル環境と本番環境、テスト環境でDB処理を変えたかったのでその方法を起筆します。
#実装
envファイルごとに分岐することで実装しました。
.envファイルと.env.productionファイルを用意してAPP_ENVを以下のようにする。
..env
APP_ENV=local
.env.production
APP_ENV=production
controllerにAPP_ENVによって分岐させる処理を加える。
.php
<?php
namespace App\Http\Controllers;
use App\Http\Requests\PostRequest;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Storage;
class PostController extends Controller
{
public function store(PostRequest $request)
{
if(app()->environment('local')){
//local環境で行いたい処理を記述
}else if(app()->environment('production')){
//production環境で行いたい処理を記述
}
}
}
#まとめ
なんかもっとスマートな方法がありそうです。
知っていましたら教えてください。