phpizi/

framework

基于ASP MVC功能的PHP MVC框架

dev-main 2023-09-26 03:37 UTC

This package is auto-updated.

Last update: 2024-09-26 06:00:59 UTC


README

  1. 下载此框架。
  2. 将'easyflow'重命名为您的项目名称。
  3. 在App文件夹中工作(忽略核心)。
app
├── config
├── controllers
├── libs
├── models
├── public
├── views
└── main.php

如何使用easyflow?

您必须遵循一系列命名规则才能使用easyflow。

文件

  • 控制器:使用点命名法,全部小写,都必须以'.controller'结尾。

  • 模型:使用点命名法,全部小写,都必须以'.model'结尾。

  • 视图:为每个控制器创建一个文件夹,并在控制器定义的所有动作|函数中创建视图

app
├── controllers
│    └── articles.controller.php
├── models
│    └── articles.model.php
├── views
│    └── articles
│        └── index.php
│        └── news.php
├── ...

  • 控制器:大驼峰命名法,都必须以'Controller'结尾。
class ArticlesController extends Controller
{ 
}
  • 模型类名:大驼峰命名法,都必须以'Model'结尾。
class ArticlesModel extends Model
{ 
}

注意:当我们从代码中引用控制器或模型时,我们不使用其前缀。

自动创建

您可以手动按照这些命名规则创建文件,但我们已经失败了一个.bat,它允许您以自主方式创建控制器、模型和视图,从而避免错误。

控制器、模型和视图

.bat articles

仅控制器和模型

.bat articles -true -false

仅控制器

.bat articles -false -false

视图变量

您可以在任何视图中访问这些变量。

echo $PROJECT_PATH;
echo $BASE_URL;
echo $CONTROLLER;
echo $ACTION;

配置模式

您可以在main.php文件中配置默认模式。

DefaultUrl::$pattern = "{articles}/{index}/{1}";

操作

view()

您可以这样显示视图

class ArticlesController extends Controller
{
    function index(): View
    {  
        return view();
    }
}

json()

您可以这样响应json

class ArticlesController extends Controller
{
    function index(): Json
    {  
        return json("Hello world!");
    }
}

redirectToAction()

您可以这样重定向到控制器操作

class ArticlesController extends Controller
{
    function index(): Redirect
    {  
        return redirectToAction('index', 'Login');
    }
}

redirectToUrl()

您可以这样重定向到Web URL

class ArticlesController extends Controller
{
    function index(): Redirect
    {  
        return redirectToUrl('https://www.youtube.com/');
    }
}

前缀

对于应用

您可以在应用级别设置URL前缀,如下所示

DefaultUrl::$pattern = "application/{articles}/{index}/{1}";

对于控制器

您可以在控制器级别设置URL前缀,如下所示

class ArticlesController extends Controller
{
    function __construct()
    {
      prefix("statistics");
    }
    ...
}

Descripción de la imagen

指定视图和数据

您可以指定视图名称和数据名称。

Descripción de la imagen

视图变量

您可以在任何视图中访问这些变量:$CONTROLLER, $ACTION, $BASE_URL。

使用参数

您可以将参数发送到某个操作,我们可以按以下方式获取参数。

  • articles/index/1

Descripción de la imagen

  • articles/index/1/Yordii

Descripción de la imagen

模板(共享文件夹)

将始终存在'footer'和'header'文件,这些文件将包裹所有视图。您还可以添加其他组件,如'menu'等,并将它们添加到存储在您的'shared'文件夹中的任何模板部分。

省略模板

您可以使用第三个参数省略包裹视图的模板。

Descripción de la imagen

连接到MySQL

  1. 在配置文件中,您可以设置您的连接数据。

Descripción de la imagen

  1. 您必须在模型中加载您的数据库,加载不是自动的,因为并非所有模型都可以从数据库中获取数据,因此可以节省资源。

Descripción de la imagen

  1. 最后,在您的控制器中,您可以使用您的模型并按以下方式访问您的数据。

Descripción de la imagen

贡献

欢迎您的贡献!如果您想为此项目做出贡献,请按照以下步骤操作

  1. 将此存储库Fork并克隆到您的本地计算机上。
  2. 创建一个新分支以进行更改: git checkout -b additional
  3. 对代码进行更改和改进。
  4. 确保您的更改遵循项目的样式指南和最佳实践。
  5. 提交您的更改: git commit -m "更改描述"
  6. 将您的更改推送到远程存储库: git push origin additional
  7. 向此主仓库提交一个拉取请求,并描述你所做的更改。
  8. 等待你的更改被审查和合并。

联系方式

如果你对这个项目有任何问题或建议,请随时联系我。你可以在yokdy360@gmail.com找到我。

许可证

本项目采用MIT许可证。如果你使用此代码,请在你的项目中包含LICENSE文件。