luthier framework
Version 0.1.1
Aviso: em desenvolvimento!
A Luthier Framework é um micro-quadro de PHP versátil para Build APIs e pequenos sites rapidamente. Quando dizemos "micro", queremos dizer realmente micro: na verdade, apenas o compositor e um único arquivo .php são necessários para iniciar.
Obtenha a estrutura Luthier com o Composer:
composer require luthier/framework
Exemplo básico:
<?php
# your_app/index.php
require ' vendor/autoload.php ' ;
$ app = new Luthier Framework ();
$ app -> get ( ' / ' , function (){
$ this -> response -> write ( " Hello world! " );
});
$ app -> group ( ' api ' , function (){
$ this -> get ( ' / ' , function (){
json_response ([ ' message ' => ' Welcome to Luthier Framework! ' ]);
});
$ this -> get ( ' about ' , function (){
json_response ([ ' version ' => Luthier Framework:: VERSION ]);
});
});
$ app -> run (); Definindo rotas:
$ app -> get ( ' foo/ ' , function (){
// Default template engine (will search for /foo.php file)
view ( ' foo ' );
});
$ app -> post ( ' bar/ ' , function (){
view ( ' bar ' );
});
$ app -> match ([ ' get ' , ' post ' ], ' baz/ ' , function (){
view ( ' baz ' );
}); Parâmetros do roteador:
$ app -> get ( ' hello/{name} ' , function ( $ name ){
$ this -> response -> write ( " Hello $ name ! " );
});
// Optional parameters
$ app -> get ( ' about/{category?} ' , function ( $ category = ' animals ' ){
$ this -> response -> write ( " Category: category " );
});
// Regex parameters
$ app -> get ( ' website/{((en|es|fr)):lang} ' , function ( $ lang ){
$ this -> response -> write ( $ lang );
}); Middleware de rota:
// Global middleware:
$ app -> middleware ( function ( $ request , $ response , $ next ){
$ response -> write ( ' Global <br> ' );
$ next ( $ request , $ response );
});
// Global middleware (but not assigned to any route yet)
$ app -> middleware ( ' test ' , function ( $ request , $ response , $ next ){
$ response -> write ( ' Before route<br> ' );
$ next ( $ request , $ response );
$ response -> write ( ' After route <br> ' );
});
$ this -> get ( ' / ' , function (){
$ this -> response -> write ( ' Route <br> ' )
})-> middleware ( ' test ' ); // <- assign the 'test' middleware to this route
Em breve!
Se você ama nosso trabalho, considere nos apoiar no Patreon