[Laravel] Laravel 루프 내부의 더 많은 제어

루프 내부의 더 많은 제어

  • 루프 내부에서 더 많은 제어문들을 사용해 렌더링 해보려 합니다.

실습 코드

resources/views/home/index.blade.php

  • @php : 블레이드 안에서 php 구문을 사용해 주고 싶다면 @php~@endphp를 사용해주면 됩니다.
  • @while : while 문은 조건을 확인하여 참이면 소스코드를 반복적으로 실행시키는 역활을 합니다.
  • random_int : random_int(min,max) : int 최소 값과 최대 값을 정하여 그 사이의 정수를 랜덤하게 출력시킵니다.
{{-- app을 상속 받는다. --}}
@extends('layouts.app') 

{{-- app  title은 Home page 라고 출력 --}}
@section('title', 'Home page')

{{-- 섹션을 열고 app을 통하여 Hello world 출력 --}}
@section('content')
<h1>Hello world!</h1>

<div>
    @for ($i = 0; $i < 10; $i++)
        <div>The current value is {{ $i }}</div>
    @endfor
</div>

<div>
    @php $done = false @endphp
    @while (!$done)
        <div>I'm not done!</div>

        @php
            if (random_int(0, 1) === 1) $done = true
        @endphp
    @endwhile

</div>

{{-- 마지막으로 섹션을 끝내야 한다. endsection --}}
@endsection

결과

설명

  • while문에서 먼저 done을 false로 정해주었고 !done에 false를 대입시켜 true가 되었습니다. 참인 조건이 성립되어 아래의 div가 출력
    if문에서 랜덤하게 0, 1중 1이면 done = true 면 루프가 끝나고 0이면 계속 루프가 됩니다.

좋은 웹페이지 즐겨찾기