Slytherin เป็นรูปทรงไมโคร PHP ที่เรียบง่ายและยืดหยุ่นซึ่งพยายามที่จะได้รับการออกแบบที่มีพื้นฐานจากการสร้างเว็บแอปพลิเคชัน มันใช้นักแต่งเพลงเป็นตัวจัดการแพ็คเกจการพึ่งพาเพื่อเพิ่มอัปเดตหรือแม้แต่ลบแพ็คเกจภายนอก
ในสถานะปัจจุบันของระบบนิเวศ PHP เฟรมเวิร์ก PHP ที่ใช้เป็นส่วนใหญ่เช่น Symfony และ Laravel เป็นชุดเครื่องมือที่ยอดเยี่ยมสำหรับวิศวกรซอฟต์แวร์ PHP ทุกคน ในขณะที่เฟรมเวิร์ก PHP ดังกล่าวให้บริการโซลูชันห้องครัวสำหรับทุกความต้องการ (เช่นระบบการจัดการเนื้อหา (CMS), CRUD ฯลฯ ) บางครั้งพวกเขาก็เกินความจริงมากเกินไปในตอนแรกหรือบางครั้งใช้โครงสร้างไดเรกทอรีที่เข้มงวด
ด้วยวิธีนี้ Slytherin จึงพยายามหาวิธีอื่นในการต้องการเครื่องมือพื้นฐานเช่น HTTP และการกำหนดเส้นทางและปล่อยให้แอปพลิเคชันพัฒนาจากเครื่องมือ API อย่างง่ายไปยังแอปพลิเคชันเว็บที่มีคุณสมบัติเต็มรูปแบบ หากไม่มีโครงสร้างไดเรกทอรีที่กำหนดจึงสามารถใช้สลิธีรินเพื่อผสมและจับคู่โครงสร้างใด ๆ ตามข้อกำหนดของแอปพลิเคชันและเพื่อส่งเสริมการใช้แพ็คเกจโอเพนซอร์ซในระบบนิเวศ PHP
ด้านล่างเป็นรหัสตัวอย่างสำหรับการสร้างแอปพลิเคชันอย่างง่ายโดยใช้ Slytherin:
// app/web/index.php
use Rougin Slytherin Application ;
// Load the Composer autoloader ----
$ root = dirname ( dirname ( __DIR__ ));
require " $ root /vendor/autoload.php " ;
// ---------------------------------
// Create a new application instance ---
$ app = new Application ;
// -------------------------------------
// Create a new HTTP route ---
$ app -> get ( ' / ' , function ()
{
return ' Hello world! ' ;
});
// ---------------------------
// Then run the application after ---
echo $ app -> run ();
// ----------------------------------กรุณาตรวจสอบหน้า "Hello World" ครั้งแรกใน Wiki สำหรับข้อมูลเพิ่มเติมในรหัสตัวอย่างที่ให้ไว้ด้านบน
เนื่องจากสลิธีรินกำลังพัฒนาเป็นไมโครเฟรมเวิร์กอาจมีการเปลี่ยนแปลงบางอย่างในรหัสภายในระหว่างการพัฒนา การเปลี่ยนแปลงดังกล่าวสามารถพบได้ในหน้าคู่มืออัปเกรด
โปรดดู Changelog สำหรับข้อมูลเพิ่มเติมสิ่งที่เปลี่ยนแปลงเมื่อเร็ว ๆ นี้
หากต้องการตรวจสอบกรณีทดสอบที่เป็นลายลักษณ์อักษรทั้งหมดโปรดติดตั้งแพ็คเกจบุคคลที่สามที่ระบุไว้ก่อน:
$ composer request filp/whoops --dev
$ composer request league/container --dev
$ composer request nikic/fast-route --dev
$ composer request phroute/phroute --dev
$ composer request rdlowrey/auryn --dev
$ composer request twig/twig --dev
$ composer request zendframework/zend-diactoros --dev
$ composer request zendframework/zend-stratigility --dev
$ composer test Slytherin ได้รับแรงบันดาลใจจากแพ็คเกจต่อไปนี้ด้านล่างและการใช้งานที่เกี่ยวข้อง การมีส่วนร่วมของพวกเขาปรับปรุงความเข้าใจในการเขียนกรอบและสร้างตรรกะแอปพลิเคชันตั้งแต่เริ่มต้น:
ใบอนุญาต MIT (MIT) โปรดดูใบอนุญาตสำหรับข้อมูลเพิ่มเติม