ecmall中_initFindParams函数的分析

2009-12-06 22:37 来源:www.chinab4c.com 作者:ecshop专家

   ecmall电子商务系统中,我们可以通过一个公共的类,来进行处理.ecmall类的model基础就有关于处理ecmall中数据库逻辑结构的。通过传递一些查询参数,达到封装效果的作用.

function _initFindParams($params)
    {
        $arr = array(
            'include'  => array(),
            'join'=> '',
            'conditions' => '',
            'order'      => '',
            'fields'     => '',
            'limit'      => '',
            'count'      => false,

            'index_key'  => $this->prikey,
        );
        if (is_array($params))
        { 
   

            return array_merge($arr, $params);
        }
        else
        {
            $arr['conditions'] = $params;
            return $arr;
        }
  
    }
通过app初始化的参数,通过调用model来操作数据库。join是表之间的连接。conditions是查询条件,order是字段排序方式,fields是
将要检索的字段,limit就是查询数据条数,count,index_key就是主键
  如果传递过来的是array.那么他通过array_merge方式来初始化,其实很巧妙。array_merge只是个赋值的作用。比如传递过来的是
join.那么$params中的数据将覆盖$arr中的jion.所以他是起到初始化的作用

 来源:中国B4C电子商务