轻量级 PHP 开发框架,CrossPHP 1.5.5 发布

jopen 4年前

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文件到指定的数据库。

你也可以单独下载skeleton, 从命令行进入到skeleton的根目录, 使用composer install来安装框架

1.5.5 更新说明


一. 增强注释配置

  1. @cp_params所有类型的url风格下生效

  2. 增强@cp_cache, 可以在入口文件中通过注入匿名函数容器来改变行为

    $app = Cross\Delegate::loadApp('web');  $app->on('cpCache', function(&$cache_config) {      $cache_config['key'] = 'abc';      return true;  });  $app->run();

    此时匿名函数返回值作为请求缓存是否生效的开关.

  3. @cp_before,@cp_after支持直接使用$self->方法名称()来调用控制器的内部方法.

二. 增强视图控制器

基本方法

视图控制器和模板中增加以下方法, 用于处理HTML标签, 基本方法如下:

  1. a()方法用于生成超链接

  2. img()方法用于生成图片连接

  3. input()处理表单中输入框

  4. radio(),checkbox(),select处理单/复选/下拉

  5. htmlTag()输出单独的html标签

  6. 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>

    更多使用方法请查看文档或在官方群内讨论

  7. block()输出带wrap()的块级元素

  8. buildForm(表单模板名称), 把模板当表单载入, 可以在入口注册匿名函数buildForm来改变框架生成表单的行为

    $this->on('buildForm', function(){        ....    });
  9. html()用于安全的输出html内容

布局相关

section(模板名称, 模板数据, array 包裹的属性, 包裹器名称)在视图控制器和模板中, 根据不同逻辑渲染不同模板.

三. 其他优化

  1. 规范了一些变量命名

  2. 在控制器中调用to()方法, 会终止执行, 不用在前加return

  3. 生成连接连接前先判断控制器和参数是否为空

  4. 更新了文档

来自: http://www.oschina.net//news/71029/crossphp-1-5-5