Q Lipe
  • เริ่มต้นใช้งาน
  • การตั้งค่าข้อมูล
  • หมายเหตุ
  • Core
    • การใช้งาน Load
  • การรับค่า Parameter จาก URL
  • เวอร์ชั่น 1.2
    • มีอะไรใหม่ในเวอร์ชั่น 1.2
Powered by GitBook
On this page
  • Load/core , Load/helper
  • Load/php
  • Load/javascript , Load/css , Load/img
  • Load/html

Was this helpful?

  1. Core

การใช้งาน Load

Load เป็นคลาสที่สร้างขึ้นมาเพื่อเรียกใช้งานไฟล์ต่างๆ ได้ง่ายขึ้นและสะดวกขึ้น

ในการที่เราจะเรียกใช้ไฟล์โดยผ่านการตรวจสอบไฟล์มาแล้ว โดยเขียนโค๊ดเพียงแค่บรรทัดเดียว ท่านสามารถที่จะใช้คลาส Load ในการอำนวยความสะดวกให้ท่านได้

Load/core , Load/helper

ถ้าหากเราทำการสร้าง Core หรือ Helper ขึ้นมาใช้งานเอง หรือจะเรียกใช้งานส่วนต่างๆที่มีอยู่ในระบบ ท่านจำเป็นที่จะใช้ Load->core หรือ Load->helper

<?php 

    defined( 'Q_APP' ) or die( 'คุณไม่มีสิทธิ์เข้าถึงไฟล์นี้โดยตรง' );

    $app = new App;
    $app::render( function() use ( $app ) {
        // โหลด Core
        $mycore = $app->load->core( 'ชื่อ Core' );
        
        // โหลด Helper
        $app->load->helper( 'ชื่อ Helper' );
    } );

?>

สำคัญ : ให้เขียนเพียงชื่อไฟล์เท่านั้น โดยไม่ต้องใส่ .php

ระบบจะทำการหาไฟล์จากโฟลเดอร์ System/ ก่อนที่จะไปหาในโฟลเดอร์ Application/

ค่าที่ส่งกลับมา

เมธอด

ค่าที่ส่งกลับมา

load->core()

return new (ชื่อ Core);

load->helper()

return true;

Load/php

ไฟล์ PHP ที่เราจะโหลดมาใช้งานจะต้องอยู่ในโฟลเดอร์ Application/Public/ เท่านั้น และนอกจากนี้เราสามารถส่งค่าตัวแปรไปให้ไฟล์ที่เราเรียกมาใช้งานได้อีกด้วย เช่น

# ไฟล์ Home.php
<?php 

    defined( 'Q_APP' ) or die( 'คุณไม่มีสิทธิ์เข้าถึงไฟล์นี้โดยตรง' );

    $app = new App;
    $app::render( function() use ( $app ) {
        $app->load->php( 'Welcome' , array(
            'myname'    =>    'Kittichai Mala-in'
        ) );
    } );

?>
# ไฟล์ Welcome.php
<?php 

    defined( 'Q_APP' ) or die( 'คุณไม่มีสิทธิ์เข้าถึงไฟล์นี้โดยตรง' );

    $app = new App;
    $app::render( function() use ( $app ) {
        
        echo $myname;
        
    } );

?>

แต่ถ้าหากชื่อตัวแปรที่คุณกำหนดไปซ้ำกับตัวแปรอื่น จะเกิด Error ขึ้นทันที

Load/javascript , Load/css , Load/img

การเรียกใช้งาน JavaScript , CSS และ Image มีด้วยกันสองแบบคือ

  1. เรียกใช้ไฟล์ที่อยู่ภายใต้ Application/Assets/

  2. เรียกใช้ไฟล์ที่อยู่ภายนอกเว็บไซต์ อาทิเช่น CDN

ค่า Parameters ของ 2 เมธอดนี้เหมือนกันทุกประการ คือ $path, $customLink = false , $attributes = array()

การเรียกใช้ในแบบที่ 1

<?php 

    defined( 'Q_APP' ) or die( 'คุณไม่มีสิทธิ์เข้าถึงไฟล์นี้โดยตรง' );

    $app = new App;
    $app::render( function() use ( $app ) {
        // Javascript แบบปกติ
        // Application/Assets/Js/Script.js
        echo $app->load->javascript( 'Script' );
        
        // แบบกำหนด Attributes
        echo $app->load->javascript( 'Script' , false , array(
            'ATTR_Name'    =>    'ATTR_Value'
        ) );
        
        
        // CSS แบบปกติ
        // Application/Assets/Css/Style.css
        echo $app->load->css( 'Style' );
        
        // แบบกำหนด Attributes
        echo $app->load->css( 'Style' , false , array(
            'ATTR_Name'    =>    'ATTR_Value'
        ) );
        
        
        // Img แบบปกติ
        // Application/Assets/Img/Image.jpg
        echo $app->load->img( 'Image.jpg' );
        
        // แบบกำหนด Attributes
        echo $app->load->img( 'Image.jpg' , false , array(
            'ATTR_Name'    =>    'ATTR_Value'
        ) );
        
    } );

?>

การเรียกใช้ในแบบที่ 2

<?php 

    defined( 'Q_APP' ) or die( 'คุณไม่มีสิทธิ์เข้าถึงไฟล์นี้โดยตรง' );

    $app = new App;
    $app::render( function() use ( $app ) {
        // Javascript
        // https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js
        echo $app->load->javascript( 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js' , true );
        
        // CSS
        // https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.0/js/bootstrap.min.js
        echo $app->load->css( 'https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.4.0/js/bootstrap.min.js' , true );
        
        // Img
        // https://cdn4.buysellads.net/uu/1/3386/1525189943-38523.png
        echo $app->load->img( 'https://cdn4.buysellads.net/uu/1/3386/1525189943-38523.png' , true );
        
    } );

?>

ความหมายของแต่ละ Parameters

Parameter

ความหมาย

$path

ชื่อไฟล์หรือที่อยู่ของไฟล์ที่จะเรียกใช้งาน

$customLink

false = จะทำการเรียกไฟล์ที่อยู่ภายใน Application/Assets/

true = จะทำการเรียกไฟล์ได้ตามความต้องการ (ต้องใส่นามสกุลไฟล์)

ค่าปกติคือ false

$attributes

รับค่ามาเป็น Array โดย

Array Key = ชื่อ Attribute

Array Value = Value ของ Attribute

Load/html

Load->html สามารถดึงไฟล์ได้จากที่เดียวเท่านั้นก็คือภายในโฟลเดอร์ Application/Public/ และยังสามารถทำการ Replace ข้อมูลใน HTML ได้

# ไฟล์ Home.php
<?php 

    defined( 'Q_APP' ) or die( 'คุณไม่มีสิทธิ์เข้าถึงไฟล์นี้โดยตรง' );

    $app = new App;
    $app::render( function() use ( $app ) {
        
        echo $app->load->html( 'Welcome' , array(
            'WEBSITE::TITLE'    =>    'หัวข้อเว็บไซต์',
            'WEBSITE::H1'       =>    'หัวข้อ'
        ) );
        
    } );

?>
# ไฟล์ Welcome.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>WEBSITE::TITLE</title>
</head>
<body>
    <h1>WEBSITE::H1</h1>
</body>
</html>

จากโค๊ดข้างบน ข้อความ WEBSITE::TITLE และ WEBSITE::H1 ในไฟล์ Welcome.html จะถูกแทนที่ด้วย "หัวข้อเว็บไซต์" และ "หัวข้อ" ตามลำดับ

PreviousหมายเหตุNextการรับค่า Parameter จาก URL

Last updated 5 years ago

Was this helpful?