Laravel 조건부 렌더링
- laravel blade에서 조건문을 실행할 수 있습니다.
실행 코드
routes/web.php
<?php
Route::get('/posts/{id}', function ($id) {
$posts = [
1 => [
'title' => 'Intro to Laravel',
'content' => 'This is a short intro to Laravel',
'is_new' => true
],
2 => [
'title' => 'Intro to PHP',
'content' => 'This is a short intro to PHP',
'is_new' => false
]
];
abort_if(!isset($posts[$id]), 404);
return view('posts.show', ['post' => $posts[$id]]);
})->name('posts.show');
resources/views/posts/show.blade.php
- @if()문을 사용하면 그게 조건문이 되어 조건을 추가 할 수 있다.
@extends('layouts.app')
@section('title', $post['title'])
@section('content')
@if ($post['is_new'])
<div>A new blog post! Using if</div>
{{-- @elseif (!$post['is_new']) --}}
@else
<div>Blog post is old! using elseif/else</div>
@endif
<h1>{{ $post['title'] }}</h1>
<p>{{ $post['content'] }}</p>
@endsection
결과
URL: posts/1
URL: posts/2