# ZeroPHP **Repository Path**: goweb/ZeroPHP ## Basic Information - **Project Name**: ZeroPHP - **Description**: 开发的第一个PHP框架 遵循MVC架构设计。 任重道远。 - **Primary Language**: PHP - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2016-03-09 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ZeroPHP是个人开发的第一款PHP框架,遵循MVC架构思想,独立视图,模块,控制器开发。 数据库DB类则引入medoo,编写D函数单例DB类来操作数据库。 正式文档和使用文档将在后续编写并上传。 如果有能力则可以自行阅读框架源代码后使用。 视图引擎输出: 使用注释标签 {# 注释内容! #} 模板最终会被解析成PHP进而运算处理,所以务必使用注释标签进行注释; 使用普通变量标签 {$content} 用于直接echo变量。如果是数组与对象,请使用打印标签。 使用打印标签 {[$arr]} 用于打印数组与对象。 使用if isset判断标签 {if $var} var是真
{else} var是假
{/if} {isset $var} var有值
{else} var没有值
{/isset} 业务逻辑均有模块处理 最后无非输出两个结果 真(有值 或者 非0) 假(没有值 或者 0) 那么判断结果 是否真假 是否有值,两个结果选择输出即可。 使用foreach遍历数组标签 {foreach key=k1 item=i1 from=$colors} {@i1}-{@k1}
{/foreach} 其中$colors为assign输出的数组 key是键 item是值 分别输出给k1和i1(输出名称可更改) 使用引入模板标签 {include file="file"} 在当前页面引入公共视图模板。 例:{include file="file"}会引入APP->当前模块(Home)->视图模板目录(Tpl)->公共视图模板目录(Public)->file.html 使用系统变量标签 {$config.webname} 系统变量以xml格式存储于APP目录下的config目录中,以变量名和值成对组成,所有模块可用。 使用外部挂件widget标签 {W 'Window',['miaohaha'=>'yiwa','content' => '喵哈哈']} 在使用挂件标签前在 APP->当前模块(Home)->外部挂件目录(Widget) 中创建 挂件名Widget.class.php的 例如:WindowWidget.class.php 并且继承于Widget类重写invoke方法。在外部挂件目录中的Tpl目录里创建相应挂件名的模板 例如:windowWidget.html; 最终在你要使用外部挂件的模板中使用{W 'Window',['miaohaha'=>'yiwa','content' => '喵哈哈']}方法。具体参详后续文档。 框架目录结构: ├── App #业务代码目录 │ ├── admin #业务模块目录 │ ├── home │ │ ├── Controller #业务控制器目录 │ │ │ └── IndexController.class.php #对应控制器文件 │ │ ├── Lib #第三方类目录 │ │ ├── Log #日志目录 │ │ ├── Model #业务模型目录 │ │ ├── Tpl #视图模板目录 │ │ │ └── Public #公共视图模板目录 │ │ │ └── index #对应控制器目录 │ │ └── View #解析视图目录 │ │ └── Widget #外部挂件目录 │ │ └── Tpl #外部挂件视图模板目录 │ └── config #公共配置目录 │ └── profile.xml #公共配置文件 ├── Public #公共资源目录 放置 css js images html │ ├── admin #对应模块 │ └── Error #公共错误资源 │ └── 404/500.html │ └── Home │ └── Index │ ├── css │ ├── js │ └── images ├── ZeroPHP #框架目录 │ ├── core #框架核心类目录 │ │ ├── CommonCore.class.php #公共函数库 │ │ ├── ControllerCore.class.php #控制器核心 │ │ └── DbCore.class.php #DB类核心 │ │ ├── LogCore.class.php #日志核心 │ │ ├── ModelCore.class.php #模型核心 │ │ └── ViewCore.class.php #视图核心 │ └── ZeroPHP.class.php #框架总控文件 └── index.php #入口文件 更新说明: 2016/3/16; 加入halt终止函数。 halt($str,bool),第一个参数 终止内容,第二个参数为布尔值,是否显示调用栈; halt函数运行时,会将终止内容以fatal级别存入日志文件当中。