轻量级 PHP 开发框架,CrossPHP 1.5.5 发布
CrossPHP Framework, PHP5.3+ 开发框架
MMVC,Layer,PSR,composer,注释配置,智能路由别名
程序需求
PHP5.3以上版本。
功能简介
支持PSR标准,composer包管理工具。MMVC,支持注释配置。 Layer布局支持,更换模板更简单。路由别名(先写代码,后定义,比如rul:/Controoooooller/Actiooooon/5,可以通过别名指定为:/d/5)。 全局的异常处理系统及错误展示,在开发中可以快速定位到具体的代码行数。默认使用PDO, 更安全, 更简单易用的Mysql查询。
使用场景
可以用于快速的网站, API, REST, 及命令行工具开发。
获取框架
从http://www.crossphp.com/download下载框架完整版并解压到本地目录。 使用admin前需要修改数据库配置config/db.config.php,并导入sql/admin/back.sql文件到指定的数据库。
1.5.5 更新说明你也可以单独下载skeleton, 从命令行进入到skeleton的根目录, 使用composer install来安装框架
一. 增强注释配置
@cp_params所有类型的url风格下生效
增强@cp_cache, 可以在入口文件中通过注入匿名函数容器来改变行为
$app = Cross\Delegate::loadApp('web'); $app->on('cpCache', function(&$cache_config) { $cache_config['key'] = 'abc'; return true; }); $app->run();
此时匿名函数返回值作为请求缓存是否生效的开关.
@cp_before,@cp_after支持直接使用$self->方法名称()来调用控制器的内部方法.
二. 增强视图控制器
基本方法
视图控制器和模板中增加以下方法, 用于处理HTML标签, 基本方法如下:
a()方法用于生成超链接
img()方法用于生成图片连接
input()处理表单中输入框
radio(),checkbox(),select处理单/复选/下拉
htmlTag()输出单独的html标签
wrap()用于生成复杂的html
$this->wrap('div') ->wrap('span') ->a('crossphp', 'http://www.crossphp.com');
生成的html代码为
<div> <span> <a href="http://www.crossphp.com">crossphp</a> </span> </div>
更多使用方法请查看文档或在官方群内讨论
block()输出带wrap()的块级元素
buildForm(表单模板名称), 把模板当表单载入, 可以在入口注册匿名函数buildForm来改变框架生成表单的行为
$this->on('buildForm', function(){ .... });
html()用于安全的输出html内容
布局相关
section(模板名称, 模板数据, array 包裹的属性, 包裹器名称)在视图控制器和模板中, 根据不同逻辑渲染不同模板.
三. 其他优化
规范了一些变量命名
在控制器中调用to()方法, 会终止执行, 不用在前加return
生成连接连接前先判断控制器和参数是否为空
更新了文档