Slytherin adalah kerangka mikro PHP yang sederhana dan dapat diperluas yang mencoba mencapai desain berbasis solid untuk membuat aplikasi web. Ini menggunakan komposer sebagai manajer paket ketergantungan untuk menambah, memperbarui atau bahkan menghapus paket eksternal.
Dalam keadaan ekosistem PHP saat ini, kerangka kerja PHP yang sebagian besar digunakan seperti Symfony dan Laravel menyediakan serangkaian alat yang bagus untuk setiap insinyur perangkat lunak PHP. Sementara kerangka kerja PHP tersebut memberikan solusi dapur-sink untuk setiap kebutuhan (misalnya, sistem manajemen konten (CMS), CRUD, dll.), Kadang-kadang mereka berlebihan, berlebihan pada awalnya, atau kadang-kadang menggunakan struktur direktori yang ketat.
Dengan ini, Slytherin mencoba pendekatan alternatif untuk hanya membutuhkan alat dasar seperti HTTP dan routing dan membiarkan aplikasi berkembang dari alat API sederhana ke aplikasi web berfitur lengkap. Tanpa struktur direktori yang ditentukan, Slytherin dapat digunakan untuk mencampur dan mencocokkan struktur apa pun berdasarkan persyaratan aplikasi dan untuk mendorong penggunaan paket sumber terbuka di ekosistem PHP.
Di bawah ini adalah kode contoh untuk membuat aplikasi sederhana menggunakan 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 ();
// ----------------------------------Mohon periksa halaman "Hello World" pertama di wiki untuk informasi lebih lanjut dalam kode sampel yang disediakan di atas.
Ketika Slytherin berkembang sebagai kerangka mikro, mungkin ada beberapa perubahan dalam kode internalnya selama pengembangan. Perubahan tersebut dapat ditemukan di halaman Panduan Peningkatan.
Silakan lihat Changelog untuk informasi lebih lanjut apa yang telah berubah baru -baru ini.
Untuk memeriksa semua kasus uji tertulis, silakan instal paket pihak ketiga yang ditentukan terlebih dahulu:
$ 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 terinspirasi oleh paket berikut di bawah ini dan implementasinya masing -masing. Kontribusi mereka meningkatkan pemahaman saya tentang kerangka kerja menulis dan membuat logika aplikasi dari awal:
Lisensi MIT (MIT). Silakan lihat lisensi untuk informasi lebih lanjut.