1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 CrossPHP 1.4.0 发布, 轻量高效的PHP开发框架 下载

Discussion in '软件资讯' started by 漂亮的石头, 2015-09-01.

  1. 漂亮的石头

    漂亮的石头 版主 Staff Member

    Joined:
    2012-02-10
    Messages:
    487,332
    Likes Received:
    47
    1.4.0 更新说明

    一. 数据库操作的改进


    1. 新增一种写法

      $this->link->get(table, fields, array('a = ? AND b = ?', array(1, 2))

      第一个参数为条件的预处理字符串, 第二个参数为参数列表. 以上写法等同1.3.0以下写法:

      $this->link->get(table, fields, array('a' = 1, 'b' = 2))

      生成的SQL语句均为SELECT fields FROM table WHERE a = ? AND b = ?, 省去条件解析, 所以比1.3.0更高效.


    2. 扩展数组语法,用于处理复杂查询条件下的优先级

      $this->link->get(table, fields, array( '(a = ? OR b = ?)' => array(1, 2), 'c' => 1, )

      生成的sql语句为SELECT fields FROM table WHERE (a = ? OR b = ?) AND c = ?, 以上语句可以转换为更高效的写法

      $this->link->get(table, fields, array( '(a = ? OR b = ?) AND c = ?', array(1, 2, 1) ))

      复杂条件下,推荐使用新写法


    3. find方法的$page参数支持在外部指定总记录条数result_count, 此时内部获取总条数的语句不再执行, 直接使用外部指定的总条数来生成对应的分页查询语句.


    4. where条件中增加对find_in_set和regexp方法的支持

      $this->link->get(table, fields, array('name' => array(find_in_set, 'id1, id2...')))
    二. 路由配置行为改变


    1. init.php文件中的router配置项中的数组不再表示控制器中action的别名.

      router => array( 'help' => array('aliasController', array('a'=>1, 'b' => 2)) )

      以上配置表示为aliasController指定别名help, 默认参数为array('a'=>1, 'b' => 2),


    2. 为控制器中的方法指定别名用冒号来表示

      router => array( 'help:list' => 'help:getList' )

      为help控制器中的getList指定别名为list
    三. 其他优化


    1. 文件缓存内部增加读取配置的方法


    2. 修复多模板情况下,请求缓存被覆盖的问题


    3. 指定URL规则为1或3时, rewrite状态下带?访问默认控制器报错的bug


    4. Request->getUrlRequest()增加默认返回值


    5. 读取配置文件的值时,$this->config->get('key', params), 如果第二个参数的值为数组则返回数组中指定的值


    6. 不再限制控制器中__call方法对注释配置的识别


    7. Helper增加一个方法用于验证国内身份证号码


    8. View中的$this->e(array, array_key, default_value)方法,需要加echo
    CrossPHP 1.4.0 发布, 轻量高效的PHP开发框架下载地址
     
Loading...