version 4.1.0

เรามาสร้าง Class แบบ Custom ใช้งานกันดีกว่า

  พฤหัสบดีที่ 05 กุมภาพันธ์ พ.ศ. 2558 เวลา 15:10:01 น.      3,077 ครั้ง


เรามาสร้าง Class แบบ Custom ใช้งานกันดีกว่า

แนะนำ

สวัสดีครับ วันนี้ผมขอนำเสนอวิธีการสร้าง Class แบบ Custom ใช้งานกัน โดยบทเรียนนี้ จะมีประโยชน์มาก สำหรับนักพัฒนาเว็บที่เขียน Class library ส่วนตัวเก็บไว้ เพราะเราสามารถเรียกใช้งาน Class ที่เราสร้างได้เลย เพียงแค่เราเข้าไปตั้งค่าการเรียกใช้งาน Class ใหม่ ภายใน Web Project ของ Laravel Framework โดยวิธีง่าย ๆ เพียง 4 ขั้นตอน มีดังต่อไปนี้

บทนี้มีอะไรบ้าง

  1. ตอนที่ 1 สร้างโฟล์เดอร์และไฟล์ Class ที่เราต้องการใช้
  2. ตอนที่ 2 ตั้งค่า path aliases ภายในไฟล์ config\app.php
  3. ตอนที่ 3 ตั้งค่า Autoload ไฟล์ Class ภายในไฟล์ composer.json
  4. ตอนที่ 4 ทดสอบเรียกใช้งาน Class ที่เราสร้างไว้

คำสั่งภายในไฟล์ "MyClass.php"

 namespace app\library;

class MyClass {
    
    public function __construct() 
    {
        var_dump('ยินดีตอนรับสู่ MyClass');
    }
    
    public static function getVersion()
    {
        var_dump('เวอร์ชั่น 1.0');
    }
    
}

ไดเรคทอรี่ [skeleton]\app\library

ไดเรคทอรี่ [skeleton]\app\library

รูปภาพที่ 1 | ไดเรคทอรี่ [skeleton]\app\library



แทรกคำสั่งลงในไฟล์ config\app.php

 return array(
    .....
    'aliases' => array(
        .....
        'URL'               => 'Illuminate\Support\Facades\URL',
        'Validator'         => 'Illuminate\Support\Facades\Validator',
        'View'              => 'Illuminate\Support\Facades\View',
        'MyClass'           => 'app\library\MyClass',
    ),
);

แทรกคำสั่ง MyClass' => 'app\library\MyClass' ตามตัวอย่างในบรรทัดที่ 8 ด้านบนนี้ ครับ



ตัวอย่างไฟล์ composer.json

 {
    .....
    "autoload": {
        "classmap": [
            "app/commands",
            "app/controllers",
            "app/models",
            "app/database/migrations",
            "app/database/seeds",
            "app/tests/TestCase.php",
            "app/library"
        ]
    },
}

อัพเดท path autoload

อัพเดท path autoload

รูปภาพที่ 2 | อัพเดท path autoload

ให้เราเปิดโปรแกรม Command Line และ cd เข้าไปยัง path ที่เก็บไฟล์เว็บแอพ ฯ จากนั้นพิมพ์คำสั่ง composer dump-autoload แล้วกดปุ่ม Enter หากสำเร็จ จะประกฏดังภาพ



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

 
Route::get('/', function()
{
    return View::make('hello');
});

// ใหม่
Route::get('/', function()
{
    
    $myclass = new MyClass();
    
    echo '< br />';
    $myclass->getVersion();
    
    echo '< br />';
    MyClass::getVersion();

});

ผลลัพธ์ที่ได้ดังภาพ

ผลลัพธ์ที่ได้ดังภาพ

รูปภาพที่ 3 | ผลลัพธ์ที่ได้ดังภาพ




Credit

  ขอบคุณข้อมูลจากเว็บไซต์ youtube.com


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

author

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

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






Comment