Kotchasan PHP Framework

โครงสร้างไดเร็คทอรี่ของคชสาร

โครงสร้างไฟล์และไดเร็คทอรี่พื้นฐานของคชสารประกอบด้วย
  • public_html/
    1. ckeditor/ เป็นไดเร็คทอรี่ติดตั้งของ CKEditor (ถ้าไม่มีการใช้ CKEditor สามารถลบออกได้)
    2. datas/ เป็นไดเร็คทอรี่ใช้สำหรับเก็บไฟล์ต่างๆที่ระบบสร้างขึ้นขณะรัน เช่น cache, log และไฟล์ต่างๆที่ผู้ใช้อัปโหลดขึ้นไป ไดเรคทอรี่นี้ต้องสามารถเขียนได้ด้วย
    3. js/ เป็นไดเรคทอรี่สำหรับเก็บไฟล์ javascript ต่างๆ (Kotchasan ติดตั้งมาพร้อมกับ GAjax Javascript Library)
    4. Kotchasan/ เป็นไดเรคทอรี่ที่เก็บไฟล์หลักต่างๆของ Kotchasan Web Framework
    5. language/ เป็นไดเร็คทอรี่สำหรับเก็บไฟล์ภาษาต่างๆ
    6. projects/ เป็นไดเร็คทอรี่เก็บโปรเจ็คตัวอย่างการใช้งาน Kotchasan Web Framework (เวลาใช้งานจริงไดเรคทอรี่นี่ไม่ต้องอัปโหลด)
    7. PDF/ เป็นไดเร็คทอรี่เก็บไฟล์ของ FPDF (ถ้าไม่ต้องการใช้ FPDF สามารถลบออกได้)
    8. skin/ เป็นไดเร็คทอรี่สำหรับเก็บไฟล์ template และ ไฟล์ CSS (Kotchasan ติดตั้งมาพร้อมกับ GCSS CSS Framework)
    9. test/ เป็นไดเร็คทอรี่เก็บไฟล์ของ Unit Test (ไม่ต้องอัปโหลด)
    10. index.php เป็นไฟล์หลักของ Application ใช้สำหรับการเรียกหน้าเว็บ (เบื้องต้นถูกตั้งค่าให้แสดงผลโปรเจ็คตัวอย่าง Welcome)

หมายเหตุ
  • สีแดง เป็นไดเร็คทอรี่หลักของคชสาร
  • สีเขียว เป็นไดเรคทอรี่หลักของแอพพลิเคชั่นซึ่งใช้ร่วมกัน (หากในโปรเจ็คประกอบด้วยแอพพลิเคชั่นมากกว่า 1 ตัว ยกตัวอย่างเช่น GCMS ซึ่งมีแอพพลิเคชั่นหลักที่แสดงหน้าเว็บ และ แอพพลิเคชั่นส่วนแอดมิน)
  • สีน้ำเงิน เป็นไดเร็คทอรี่ของ Third party ที่คชสารสนับสนุนอยู่แล้ว ถ้าไม่มีการใช้งานสามารถลบออกได้
ไฟล์และไดเรคทอรี่ต่างๆของแอพพลิเคชั่น ซึ่งทั้งหมดจะอยู่ภายใต้โครงสร้างระดับเดียวกัน ประกอบด้วย
  • public_html/
    1. modules/ เป็นไดเร็คทอรี่ใช้สำหรับเก็บโค้ดโปรแกรม ภายในจะถูกแบ่งออกเป็นโมดูลต่างๆ และแต่ละโมดูลจะประกอบด้วย models, controllers และ views ตามโครงสร้างของ MVC
    2. settings/ เป็นไดเร็คทอรี่สำหรับเก็บค่าติดตั้งต่างๆ
    3. index.php เป็นไฟล์หลักของ Application ใช้สำหรับการเรียกหน้าเว็บ
    4. admin/
      1. modules/ เป็นไดเร็คทอรี่ใช้สำหรับเก็บโค้ดโปรแกรม สำหรับส่วน admin มีองค์ประกอบเหมือน public_html/modules/
      2. settings/ เป็นไดเร็คทอรี่สำหรับเก็บค่าติดตั้งต่างๆ เพิ่มเติมจาก public_html/settings/ ซึ่งจะถูกเรียกใช้เฉพาะส่วน admin เท่านั้น
      3. index.php เป็นไฟล์หลักหน้า admin

ข้อกำหนดของชื่อไฟล์และไดเรคทอรี่ของคชสาร
  • ไฟล์ต่างๆภายใต้ไดเรคทอรี่ modules, settings และ language จะต้องเป็นภาษาอังกฤษตัวพิมพ์เล็กและตัวเลขเท่านั้น
  • สำหรับ Class ต่างๆที่สร้างขึ้นเพิ่มเติมเพื่อใช้งานในแอพพลิเคชั่น ชื่อไดเร็คทอรี่จะเป็น Case sensitive และปฎิบัติตาม PSR-4 (แนะนำรูปแบบเป็น StudlyCaps ตัวเลขและภาษาอังกฤษตัวพิมพ์เล็กทั้งหมด แต่ขึ้นต้นด้วยภาษาอังกฤษตัวพิมพ์ใหญ่ เช่น Gcms\Login) เช่น คลาส Gcms\Login จะเก็บไฟล์ไว้ที่ /Gcms/Login.php
สามารถดูโครงสร้างของไฟล์และไดเร็คทอรี่แบบสมบูรณ์ได้ที่โปรเจ็ค GCMS