PHP code example of molecular / molecularframework

1. Go to this page and download the library: Download molecular/molecularframework library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

molecular / molecularframework example snippets


route()->get("/",function(){
   return 'is alive =)';
});

route()->get('/index','\App\Controller\HomeController@index');

route()->get('/get','\App\Controller\HomeController@get');
route()->post('/post','\App\Controller\HomeController@post');
route()->put('/put','\App\Controller\HomeController@put');
route()->delete('/delete','\App\Controller\HomeController@delete');
route()->option('/option','\App\Controller\HomeController@option');
route()->path('/path','\App\Controller\HomeController@path');
route()->head('/head','\App\Controller\HomeController@head');
route()->any('/any','\App\Controller\HomeController@any');

route()->custom('CUSTOM','/custom','\App\Controller\HomeController@custom');
route()->custom(['FOO','BAR'],'/customArray','\App\Controller\HomeController@customArray');

route()->group('api', function ($group) {
    
    /** @var \Molecular\Routes\RouteDispacher $group */
    
    $group->get('get', function () {
        return 'responde';
    });
    
    $group->get('/get','\App\Controller\HomeController@get');
});

use Molecular\Http\Request;
use Molecular\Http\Response;
use Molecular\Routes\Middleware\Middleware;

class FooMiddleware extends Middleware
{

    public function handle(Request $request, Response $response)
    {
        $response->setResponseContent('foo');
        $this->next($request,$response);
        $response->setResponseContent('bar');
    }
}

route()->get('/get','\App\Controller\HomeController@get',['middleware'=>[FooMiddleware::class]]);

route()->group('api', function ($group) {
    
    /** @var \Molecular\Routes\RouteDispacher $group */
    
    $group->get('get', function () {
        return 'responde';
    });
    
    $group->get('/get','\App\Controller\HomeController@get');
},['middleware'=>[FooMiddleware::class]]);

use App\Model\HomeModel;

class HomeController
{
    public function index(){
        $model = new HomeModel();
        $model->work = "it's Work";
        return  view('home.php',['model'=>$model]);
    }

}

class Bar
{
    public $bar;
    public function __construct($bar = 10){
        $this->bar = $bar;
    }
}

class Foo
{
    public $bar;
    public function __construct(Bar $bar){
        $this->bar = $bar;
    }
}

$foo = resolve(Foo::class);
echo $foo->bar->bar; // 10

class invalidclass
{
    public function __construct($bar){
        $this->bar = $bar;
    }
}
$foo = resolve(invalidclass::class); //Exception