getPathInfo(); // パス全体を取得 $segments = explode('/', trim($path, '/')); // '/'で分割 $managementCode = $segments[0] ?? null; // 最初の部分を運営元コードとする if (!$managementCode) { // 不正アクセス防止のため、エラーログでシステム例外を記録 Log::error("[ERROR] " . now()->format('Y-m-d H:i:s') . " 運営元コードが見つからない: " . $request->getPathInfo()); abort(404, '運営元コードが見つかりません'); } // 運営元コードの正当性検証のため、DBで存在確認 $management = DB::table('management') ->where('management_code', $managementCode) ->where('valid_flag', 1) // 有効フラグが1の場合のみ ->first(); if (!$management) { // 不正アクセス防止のため、エラーログでシステム例外を記録 Log::error("[ERROR] " . now()->format('Y-m-d H:i:s') . " 運営元が見つからない: " . $managementCode); abort(404, '運営元が見つかりません'); } // システム操作追跡のため、成功した運営元取得を記録 Log::info("[INFO] " . now()->format('Y-m-d H:i:s') . " 運営元コード取得成功: " . $managementCode); // 運営元情報を他の処理で利用可能にするため、セッションに保存 session(['management' => $management]); return $next($request); } }