simplewebframework / core
简单Web应用的快速构建框架
dev-master
2016-01-15 14:49 UTC
Requires
- php: >=5.3
This package is not auto-updated.
Last update: 2024-09-18 19:28:45 UTC
README
简单Web应用的快速构建框架
Simple Web Framework/core
此包包含框架的核心部分。
内容
概述
这是一个小型库,用作构建简单Web应用的基础。它提供了非常基础的控制器/动作/展示的分离。除此之外,其范围非常基础。
它不提供模型、访问数据机制或任何展示层。
它所做的只是提供URL分析机制、一些非常简单的路由,以及通过插件系统进行扩展的可能性。
URL
Simple Web Framework期望URL为/pagename/param1/val1/param2/val2/name.ext
其中
- pagename - 是存放应用的目录名称
- param1/param2 - 是应用可用的参数。它们持有的值是相应的val1/val2。
- name.ext - 主要用于装饰目的(但仍可用)
示例
http://www.example.org/documentedit/id/425/introduction.html
文件
基于此,应用在'pages'目录中搜索与'pagename'相同的子目录(在示例中为'documentedit')。在那里,它期望找到五个PHP文件
- validator.php
- formprep.php
- form.php
- action.php
- view.php
路由
逻辑如下-
validator.php - 决定是否需要显示表单(或是否需要带错误信息的显示)。如果收到表单数据中存在错误(例如,一些必填字段为空)或$_POST中没有数据,则包含两个文件
- formprep.php - 为表单显示准备数据(例如从数据库中读取数据)
- form.php - 显示表单
如果没有错误或根本没有任何验证器(因此没有form.php和formprep.php),框架将跳转到
-
action.php - 执行动作(例如从数据库中读取,保存到数据库)
-
response.php - 将数据输出给客户端或重定向到另一个页面
这就是框架所做的一切。其他所有事情都必须在这些文件中或通过插件系统完成。
插件
插件是扩展框架功能的主要方式在执行过程中,Simple Web Framework可能会发出以下任何事件之一
- start
- validator
- formprep
- form
- action
- view
- finish 和
- error
框架允许插件通过钩子使用它
- before{event}
- on{event}
- after{event}
要使用钩子,插件需要具有该名称的方法(例如,beforeStart或afterAction)