phpizi/ framework
基于ASP MVC功能的PHP MVC框架
This package is auto-updated.
Last update: 2024-09-26 06:00:59 UTC
README
- 下载此框架。
- 将'easyflow'重命名为您的项目名称。
- 在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"); } ... }
指定视图和数据
您可以指定视图名称和数据名称。
视图变量
您可以在任何视图中访问这些变量:$CONTROLLER, $ACTION, $BASE_URL。
使用参数
您可以将参数发送到某个操作,我们可以按以下方式获取参数。
- articles/index/1
- articles/index/1/Yordii
模板(共享文件夹)
将始终存在'footer'和'header'文件,这些文件将包裹所有视图。您还可以添加其他组件,如'menu'等,并将它们添加到存储在您的'shared'文件夹中的任何模板部分。
省略模板
您可以使用第三个参数省略包裹视图的模板。
连接到MySQL
- 在配置文件中,您可以设置您的连接数据。
- 您必须在模型中加载您的数据库,加载不是自动的,因为并非所有模型都可以从数据库中获取数据,因此可以节省资源。
- 最后,在您的控制器中,您可以使用您的模型并按以下方式访问您的数据。
贡献
欢迎您的贡献!如果您想为此项目做出贡献,请按照以下步骤操作
- 将此存储库Fork并克隆到您的本地计算机上。
- 创建一个新分支以进行更改:
git checkout -b additional
。 - 对代码进行更改和改进。
- 确保您的更改遵循项目的样式指南和最佳实践。
- 提交您的更改:
git commit -m "更改描述"
。 - 将您的更改推送到远程存储库:
git push origin additional
。 - 向此主仓库提交一个拉取请求,并描述你所做的更改。
- 等待你的更改被审查和合并。
联系方式
如果你对这个项目有任何问题或建议,请随时联系我。你可以在yokdy360@gmail.com找到我。
许可证
本项目采用MIT许可证。如果你使用此代码,请在你的项目中包含LICENSE文件。