version 4.1.0

บทที่ 5 Blade Templae คืออะไร ใช้งานอย่างไร

  อังคารที่ 27 มกราคม พ.ศ. 2558 เวลา 08:59:00 น.      8,082 ครั้ง


บทที่ 5 Blade Templae คืออะไร ใช้งานอย่างไร

รูปภาพตัวอย่าง

รูปภาพตัวอย่าง

รูปภาพที่ 1 | รูปภาพตัวอย่าง



ตัวอย่างคำสั่ง

 @extends("layouts.main")
@section("content")
<div class="container">

    <!-- การแทรกคำสั่ง PHP ในไฟล์ Blade -->
    <h2> HELLO :: {{ $name }} </h2>
    <h2> Time :: {{ time() }} </h2>

    <!-- การแทรกคำสั่ง IF PHP ในไฟล์ Blade -->
    @if ($num > 0)
       ไม่พบข้อมูล
    @else
        พบข้อมูล
    @endif

    <!-- การแทรกไฟล์ View ภายนอก เข้ามแสดงภายในไฟล์ Blade -->
    @include('layouts.menu')

    <!-- การคอมเม้น ภายในไฟล์ Blade -->
    {{-- ข้อความคอมเม้น --}}

    <!-- ตัวอย่างคำสั่งแสดงฟอร์ม ภายในไฟล์ Blade -->
    {{ Form::open(array('url'=>'user/login','class'=>'form-signin')) }}
        {{ Form::text('password','',array('class'=>'form-control','placeholder'=>'Password')) }}
    {{ Form::close() }}
    
</div>
@stop

สิ่งที่ต้องเข้าใจคือ

  • บรรทัดที่ 1 @extends("layouts.main") คือการดึงเอาไฟล์ layout อื่น ๆ มาใช้งาน ซึ่งจากตัวอย่างนี้ จะดึงไฟล์ Layouts
    ในไดเรคทอรี่ app/views/layouts/ ที่มีชื่อว่า "main.blade.php" เข้ามาแสดงในหน้า view นี้ด้วย
  • บรรทัดที่ 2 @section("content") คือ การประกาศว่าตั้งแต่บรรทัดนี้เป็นต้นไป จนถึงคำสั่ง @stop จะใช้ชื่อว่า "content"
    ซึ่งมันจะมีความสัมพันธ์กับ คำสั่ง @yield("content") ในไฟล์ Layouts "main.blade.php" หรือ การนำเอา "content" นี้ เอาไปแสดงในส่วนของ @yield("content") ในไฟล์ Layouts "main.blade.php" นั้นเอง
  • บรรทัดที่ 6 {{ $name }} คือการแทรกตัวแปร PHP เพื่อใช้แสดงค่าของตัวแปร ซึ่งผลลัพธ์จะเหมือนกับคำสั่ง echo $name
    ซึ่งจะอธิบายง่าย ๆ คือ ใช้แทนคำสั่ง echo ด้วยคำสั่ง {{ }} ในไฟล์ Blade นั้นเอง
  • บรรทัดที่ 17 @include('layouts.menu') คือการดึงไฟล์ View จากภายนอกเข้ามาแสดงผลลัพธ์ในไฟล์นี้
    ดังตัวอย่าง ผมต้องการดึงไฟล์ View "menu" ที่อยู่ในไดเรคทอรี่ app/views/layouts/menu.blade.php มาแสดง
  • บรรทัดที่ 20 {{-- ข้อความคอมเม้น --}} คือการใส่คอมเม้นให้กับส่วนที่เราต้องการคอมเม้นไว้กันลืมครับ ซึ่งคำสั่งจะแสดงผลเหมือนกับคำสั่ง <!-- ข้อความคอมเม้น --> นั่นเอง..
  • บรรทัดที่ 23 {{ Form::open(array('url' => 'user/login', 'class' => 'form-signin')) }} คือคำสั่งในการแสดงฟอร์มรับข้อมูล ผลลัพธ์ของคำสั่งที่จะได้ออกมา
    คือ <form method="POST" action="http://localhost/tutorial_laravel/user/login" accept-charset="UTF-8" class="form-signin">
  • บรรทัดที่ 24 {{ Form::text('password','', array('class' => 'form-control', 'placeholder' => 'Password')) }}
    คือ คำสั่งในการแสดง Textbox ผลลัพธ์ของคำสั่งที่จะได้ออกมาคือ <input class="form-control" placeholder="Password" name="password" type="text" value="">
  • บรรทัดที่ 25 {{ Form::close() }} คือคำสั่งในการแสดงคำสั่งปิดฟอร์มรับข้อมูล ผลลัพธ์ของคำสั่งที่จะได้ออกมาคือ </form>
  • บรรทัดที่ 28 @stop คือ จุดสิ้นสุดของคำสั่ง @section("content")



นักแปล / นักเขียน / เรียบเรียง

author

เอกบิณ ใจแก้วมา (แม็ก)

"โปรแกรมเมอร์ตัวเล็ก ๆ" สะสมประสบการณ์ด้านการพัฒนาซอฟแวร์มามากกว่า 11 ปี
# ติดตามผลงานได้ที่ | พบกับเราที่ Google+ | Facebook






Comment