Slytherin est un micro-travail PHP simple et extensible qui essaie d'obtenir une conception solide pour la création d'applications Web. Il utilise le compositeur comme gestionnaire de package de dépendance pour ajouter, mettre à jour ou même supprimer les packages externes.
Dans l'état actuel de l'écosystème PHP, les cadres PHP principalement utilisés comme Symfony et Laravel fournissent un excellent ensemble d'outils pour chaque ingénieur logiciel PHP. Bien que lesdits cadres PHP fournissent une solution de chariot pour tous les besoins (par exemple, système de gestion de contenu (CMS), crud, etc.), ils sont parfois exagérés, écrasants au début, ou utilisent parfois une structure de répertoire stricte.
Avec cela, Slytherin essaie une approche alternative pour ne nécessiter que les outils de base comme HTTP et le routage et laisser l'application passer d'un simple outil d'API à une application Web complète. Sans structure de répertoire définie, Serpentherin peut être utilisé pour mélanger et faire correspondre toute structure en fonction des exigences de l'application et encourager l'utilisation de packages open source dans l'écosystème PHP.
Vous trouverez ci-dessous un exemple de code pour créer une application simple à l'aide de 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 ();
// ----------------------------------Veuillez consulter la première page "Hello World" dans le wiki pour plus d'informations dans l'exemple de code fourni ci-dessus.
Alors que Serpentherin évolue en micro-travail, il pourrait y avoir des changements de rupture dans son code interne pendant le développement. Lesdites modifications peuvent être trouvées dans la page Guide de mise à niveau.
Veuillez consulter Changelog pour plus d'informations ce qui a changé récemment.
Pour vérifier tous les cas de test écrits, veuillez d'abord installer les packages tiers spécifiés:
$ 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 est inspiré par les packages suivants ci-dessous et leurs implémentations respectives. Leurs contributions ont amélioré ma compréhension de l'écriture de cadres et de la création de la logique d'application à partir de zéro:
La licence MIT (MIT). Veuillez consulter la licence pour plus d'informations.