A Sonserina é um micro-quadro PHP simples e extensível que tenta obter um design baseado em sólido para criar aplicativos da Web. Ele usa o Composer como gerenciador de pacotes de dependência para adicionar, atualizar ou até remover pacotes externos.
No estado atual do ecossistema PHP, as estruturas PHP usadas principalmente como Symfony e Laravel fornecem um ótimo conjunto de ferramentas para todos os engenheiros de software PHP. Enquanto as referidas estruturas de PHP fornecem uma solução de caneca de cozinha para todas as necessidades (por exemplo, sistema de gerenciamento de conteúdo (CMS), CRUD etc.), às vezes são exageradas, esmagadoras a princípio ou às vezes usam uma estrutura de diretório estrita.
Com isso, a Solytherin faz uma abordagem alternativa para exigir apenas as ferramentas básicas como HTTP e roteamento e permitir que o aplicativo evolui de uma ferramenta de API simples para um aplicativo Web completo. Sem estrutura de diretório definida, a Sonserina pode ser usada para misturar e corresponder a qualquer estrutura com base nos requisitos do aplicativo e para incentivar o uso de pacotes de código aberto no ecossistema PHP.
Abaixo está um código de exemplo para criar um aplicativo simples usando a 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 ();
// ----------------------------------Verifique a primeira página "Hello World" no wiki para obter mais informações no código de exemplo fornecido acima.
À medida que a Sonserina está evoluindo como um micro-quadro, pode haver algumas mudanças de ruptura em seu código interno durante o desenvolvimento. As alterações mencionadas podem ser encontradas na página do guia de atualização.
Consulte Changelog para obter mais informações o que mudou recentemente.
Para verificar todos os casos de teste escritos, instale os pacotes de terceiros especificados primeiro:
$ 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 A Sonserina é inspirada nos pacotes a seguir abaixo e em suas respectivas implementações. Suas contribuições melhoraram minha compreensão das estruturas de escrever e criar lógica de aplicativo a partir do zero:
A licença do MIT (MIT). Consulte a licença para obter mais informações.