본문 바로가기
Web/PHP

[ Laravel ] 블레이드 템플릿 문법

by 기저귀찬개발자 2019. 10. 18.

 

1. 삼항 연산자 

{{ check() ? 'yes' : 'no' }}  //조건에 따라 
<input type="{{ $type ?? 'text' }}"> // (isset($type))? $type: 'text' 와 동일 

 

2. 데이터 존재 유무

{{ isset($name) ? $name : 'Default' }}

{{ $name or 'Default' }} // 단축형

 

 

 

 

3. escape 없이 출력하기 

- 사용자들로부터 입력받은 컨텐츠를 출력할때는 사용하지 않는게 좋다 XSS 공격에 취약해짐

{!! $var !!}

 

4. 조건문

@if (count($records) === 1)

    one

@elseif (count($records) > 1)

    two

@else

    three

@endif

 

 

5. 주석

- 컴파일 과정에서 제외되어 클라이언트는 보지 못한다.

{-- 아브라카다브라 --}

 

 

 

 

6.반복문

- 루프 중첩일 경우 parent를 통해 부모 변수에 접근할 수 있다.

@foreach ($users as $user)
    @continue($user->type == 1)

        <li>{{ $user->name }}</li>

    @break($user->number == 5)
    @foreach ($user->posts as $post)
        @if ($loop->parent->first)
            This is first iteration of the parent loop.
        @endif
    @endforeach
@endforeach

//유용한 $loop 변수
$loop->index	현재 반복문의 인덱스(0 부터 시작).
$loop->iteration	현재 반복문의 횟수(1 부터 시작).
$loop->remaining	반복문의 남은 횟수.
$loop->count	반복되는 배열의 총 아이템 수.
$loop->first	현재 반복문의 첫번째 인지 확인.
$loop->last	현재 반복문의 마지막 인지 확인.
$loop->depth	중첩된 반복문의 깊이.
$loop->parent	반복문이 중첩된 경우 부모의 루프 변수.

 

7. include 

- 외부 뷰 파일을 include 시킬때 사용

@include('view.name', ['some' => 'data'])
@includeIf('view.name', ['some' => 'data'])
@includeWhen($boolean, 'view.name', ['some' => 'data'])

 

댓글