iftakharalamrizve/framework-ifos

该软件包最新版本(v0.1.3)没有可用的许可证信息。

v0.1.3 2022-07-26 05:38 UTC

This package is auto-updated.

Last update: 2024-09-07 14:10:31 UTC


README

issues forks stars

Php框架ifos(开源中的理想主义框架)

这是一个使用PHP构建的简单轻量级框架。通过这个框架,开发者可以轻松创建原始PHP项目。在这里可以轻松连接多个数据库,也可以使用Route、View、Controller、Model、Migration、Validation和默认认证

安装

使用以下命令通过composer创建项目

composer create-project iftakharalamrizve/framework-ifos proejct-name

.env配置

将.env.example复制为.env

copy .env.example .env
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=

项目中的路由配置

默认的路由文件具有分离模式。用户可以在路由文件夹中定义多个路由文件。如果更改此模式,可以轻松地从bootstrap/app.php文件中进行配置。

在路由文件中定义路由

<?php
use app\controllers\AuthController;

$router->get( '/registration', [ AuthController::class , 'register']);
$router->post('/registration',[AuthController::class,'register']);
$router->get('/login',[AuthController::class,'login']);
$router->post('/login',[AuthController::class,'login']);
$router->get('/logout',[AuthController::class,'logout']);
$router->get('/profile',[AuthController::class,'profile']);

中间件配置

在中间件文件夹中定义中间件。在config/config.php文件中注册中间件。在routeMiddleware组中注册中间件。

 config/config.php
 'routeMiddleware'=>[
        'auth'=>app\middleware\AuthMiddleware::class
  ]
#Example Middleware use in route file
<?php
    $router->get('/profile',[AuthController::class,'profile'])->middleware('auth');
 ?>
 
#Example Middleware Class
<?php
namespace app\middleware;

use e2c\mvc\auth\Auth;
use e2c\mvc\Middleware;
use e2c\mvc\Request;

class AuthMiddleware extends Middleware
{
    public function handle ( Request $request )
    {
        if(Auth::isGuest()){
            return $request->redirect ( '/login');
        }

    }
}

# License

The MIT License (MIT). Please see [License](LICENSE) for more information.