iuriaraujocs/mini-system

该包的最新版本(dev-master)没有可用的许可证信息。

mini 框架,功能性的 Web 开发框架

dev-master 2022-02-08 14:19 UTC

This package is not auto-updated.

Last update: 2024-09-26 13:45:55 UTC


README

本项目旨在从头开始用 PHP 语言实现一个小型框架。想法是从头开始开发开发人员制作专业项目所需的所有东西,而不使用市场上任何知名的框架。

我的 mini-system 是我找到的一种方式,用来研究真实框架在底层是如何工作的,并且它是随着我的程序员开发而创建的,主要在初期用于学习目的,并没有打算商业化或类似的事情。

我创建了许多类来理解它们是如何工作的,如何去做,并且设计得易于获得灵活和模块化的系统。

以下是一个使用此微型框架的实现示例

🔗 产品/分类电子商务管理器

主要功能是

  • 功能性强且安全的 Bootstrap 框架(加载此框架)
  • 直观的路由类(灵感来自 Django 路由系统)
  • 在项目范围内使用的辅助函数(见下文)
  • 友好的模板引擎系统界面(使用 Smarty 库)
  • 从头开始启发的 ORM 类,灵感来自 Eloquent(Laravel ORM)
  • 持久化类,用于实际连接数据库
  • 基础控制器,用于常用控制器方法

如何使用

    composer require iuriaraujocs/mini-system

下一步

  • 实现缓存系统
  • 压缩 CSS 和 JavaScript 文件
  • PHPunit 支持
  • 依赖注入支持
  • 自定义异常处理
  • CLI 接口,以及命令支持
  • 重构代码以符合 PSRs(PHP 标准推荐)
  • 安装 grumPHP 并配置 PHPCS、PHPMD、PHPCPD
  • 创建用于 https 辅助器的类(使用 curl 或 guzzle)
  • 添加对消息传递工具的支持以实现微服务之间的通信

迄今为止的辅助函数

  • session_initialize(用于安全地初始化会话)
  • app_log(Monolog 接口)
  • app_post(如果存在,通过名称获取 post 变量)
  • app_get
  • app_request
  • app_config(获取用户分配的配置数据)
  • app_session(获取会话变量)
  • app_unsession(取消会话变量)
  • clearBrowserCache(强制浏览器清除其缓存)
  • is_server
  • is_local
  • app_get_env(从 env 文件获取变量)
  • app_set_env
  • app_path(获取项目根路径。默认情况下是此 minisystem 之前目录,但可以进行配置)
  • app_https(强制将 http 重定向到 https)
  • app_upload_img
  • app_encode_csv
  • app_decode_csv
  • 其他字符串辅助函数
  • 其他数组辅助函数