CrossPHP 1.5.5 发布了

1.5.5 更新说明


一. 加强注释配置

  1. @cp_params全部类型的url风格下生效php

  2. 加强@cp_cache, 能够在入口文件中经过注入匿名函数容器来改变行为html

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

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

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

二. 加强视图控制器

基本方法

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

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

  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. 更新了文档

相关文章
相关标签/搜索