①モバイル判定するMiddlewareを作成
app/Http/Middleware配下に適当な名前でMiddlewareを作成します。
ここではGetIsMobile.phpとしてみます。
中身は以下になります。
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\View;
class GetIsMobile
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$isMobile = false;
$user_agent = $request->header('User-Agent');
if ((strpos($user_agent, 'iPhone') !== false)
|| (strpos($user_agent, 'iPod') !== false)
|| (strpos($user_agent, 'Android') !== false)) {
$isMobile = true;
}
View::share('isMobile', $isMobile);
return $next($request);
}
}
②Kernel.phpにMiddlewareを登録
Kernelに Middlewareを登録します。
場所はapp/Http/配下にあります。
protected $middleware = [
~略~
\App\Http\Middleware\GetIsMobile::class, //追加
];
③viewで使用
@if($isMobile)
//モバイルだけで行う処理
@endif
@if(!$isMobile)
//モバイル以外だけで行う処理
endif