ecmall 常用方法/函数说明

来源:互联网 发布:手机淘宝链接转换器 编辑:程序博客网 时间:2024/05/16 15:37
ecmall/eccore /ecmall.php常量:define('START_TIME', ecm_microtime());define('IS_POST', (strtoupper($_SERVER['REQUEST_METHOD']) == 'POST'));//判断请求方式是不是post传来的.define('IN_ECM', true);define('PHP_SELF', htmlentities(isset($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME']-));define('VERSION', '2.2 beta');define('RELEASE', '20091230');类 ECMall方法 startup(config = array())类 object方法 _error($msg,$obg = '')      has_error()//检测是否存在错误      get_error()//获取错误列表类 Lang成员方法 &get($key='')//获取指定键的语言项-----------------------------------------------      load($lang_file)//加载指定的语言至全局语言数据中-----------------------------------------------      fetch($lang_file)//获取一个语言文件的内容类 Conf成员方法 load($conf)//加载配置项-----------------------------------------------            get($key = '') //获取配置项----------------------------------------------- 函数方法     lang_file($file)  //语言文件路径-----------------------------------------------      &v($is_new = false, $engine = 'default')//获取试图连接           &m($model_name, $params = array(), $is_new = false)//获取一个模型-----------------------------------------------      &bm($model_name, $params = array(), $is_new = false)//获取一个业务模型-----------------------------------------------      c(&$app)//获取当前控制器实例      &cc()      import()//导入一个类-----------------------------------------------      strtokey($str,$owner = '')//将default.abc类的字符串转为$default['abc'];-----------------------------------------------      trace($var)//跟踪调试      dump($arr)//rdump的别名      rdump($arr)//格式化显示出变量      vdump(arr)//格式化并显示出变量类型      &db()//创建MySQL数据库对象实例      get_domain()//获得当前的域名-----------------------------------------------      size_url()//获得网站的URL地址-----------------------------------------------      sub_str($string, $length = 0, $append = true)//截取UTF-8编码下字符串的函数-----------------------------------------------      real_ip()//获得用户的真实IP地址-----------------------------------------------------------      is_email($user_email)//验证输入的邮件地址是否合法-------------------------------------------      is_time($time)//检查是否为一个合法的时间格式-----------------------------------------------      gd_version()//获得服务器上的GD 版本      addslashes_deep($value)//递归方式的对变量中的特殊字符进行转义      addslashes_deep_obj($obj)//将对象成员变量或者数组的特殊字符进行转义      stripslashes_deep($value)//递归方式的对变量中的特殊字符进行转义      make_semiangle($str)//将一个字符中含有全角的数字字符/字母/空格或'%+-()'字符转换为响应半角字符      format_fee($fee)//格式化费用:可以输入数字或百分比的地方-----------------------------------------------      compute_fee($amount,$rate,$type)//根据总金额和费率计算费用-----------------------------------------------      real_server_ip()//获取服务器的IP-----------------------------------------------      get_crlf()//获取用户操作系统的换行符;      ecm_iconv($source_lang, $target_lang, $source_string = '')//编码转换函数-----------------------------------------------      ecm_json_encode($value) //-----------------------------------------------      ecm_josn_decode($value,type = 0)//-----------------------------------------------      get_object_vars_deep($obj)//返回由对象属性组成的关联数组 -----------------------------------------------      file_ext($filename)      db_create_in($item_list,$field_name = '')//创建像这样的查询:"IN('a','b')"      ecm_mkdir($absolute_path, $mode = 0777)//创建目录(如果该目录的上级目录不存在,会先创建上级目录),依赖于 ROOT_PATH 常量,且只能创建 ROOT_PATH 目录下的目录目录分隔符必须是 / 不能是 \      ecm_rmdsir($dir)//删除目录,不支持目录中带..      price_format($price, $price_format = NULL)      ecm_setcookie($key, $value, $expire = 0, $cookie_path=COOKIE_PATH, $cookie_domain=COOKIE_DOMAIN)//设置cookie-----------------------------------------------      ecm_getcookie($key = '')//获取COOKIE的值-----------------------------------------------      ecm_iconv_deep($source_lang,$target_lang,$value)//对数组转码-----------------------------------------------      ecm_fopen($url, $limit = 500000, $post = '', $cookie = '', $bysocket = false, $ip = '', $timeout = 15, $block = true)//fopen封装函数      html_filter($html)//危险 HTML 过滤器      clean_cache()//清理系统所有编译器文件,缓存文件,模板结构数据      trim_right($str)//去掉字符串右侧可能出现的乱码------------------------------      _at($fun)//通过该函数运行函数可以抑制错误      outer_call($func, $params=null)//调用外部函数  ------------------------------      reset_error_handler()      is_from_browser()//返回是否是通过浏览器访问的页面      ecm_define($source)//从文件或数组中定义常量      ecm_microtime()//获取当前的微秒数 ------------------------------    isWeixin()//判断是否是微信访问 strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger')!=="false" 说明就是了  -------------------------------------------------------------------------------------------------------------------------------------------------------------------       ecmall/eccore/model/model.base.php           //除本基类文件外,所有的模型类的类名的构造规则应该是模型名(首字母大写)+model组成,文件名必须是模型名+.model组成如有一个用户模型,模型名为user,则其文件名应为user.model.php,类名为UserModel类:BaseModel extends Obiect属性:    var $db = null;       var $table = '';       var $prikey= '';       var $alias = '';       var $_name   = '';       var $_prefix = '';       var $_autov = array();       var $_last_query_count = -1;       var $_dropped_data = array();       var $_relation = array();方法:__construct($params,$db)     BaseModel($params,$db)     getName()//获取模型名称----------------     get($params)//获取单一一条记录----------------     get_unfo($id)//根据ID取得信息----------------     find($params = array())//根据一定条件找出相关数据(不连接其他模型,直接通过JOIN语句来查询)--------------------------------     findAll($params = array())//关联查找关于多对多关系的记录     getRelatedDate($relation_name, $ids, $find_param = array())//获取一对多,多对多的关联数据     add($data, $compatible = false)//添加一条记录--------------------------------     createRelation($relation_name, $id, $ids)//添加多对多关联的中间表关系数据     updateRelation($relation_name, $id, $ids, $update_values)//更新多对多关系中的关系数据     unlinkRelation($relation_name, $conditions, $ids = null)//去除多对多的关联连接     _relationLink($action,$relation_name,$id,$ids,$update_values = array())//多对多关联表操作     edit($conditions, $edit_data)//简化更新操作 --------------------------------     drop($conditions, $fields = '')//简化删除记录操作--------------------------------     dropDependentData($keys)//删除依赖数据     _getExtLimit($ext_limit, $alias = null)//获取扩展限制     getDroppedDate()//获取实时保存的已删除记录     getCount()//获取统计数     _saveDroppedDate($sql)//临时保存已删除的记录数据     _updateLastQueryCount($sql)//更新查询统计数     _getConditions($conditions,$if_add_alias = false)//获取条件语段     _getSetFields($date)//获取设置字段     getRealFields($src_fields_list)//获取查询时的字段列表     _getFieldTable($owner)//解析字段所属     _getInsertInfo($data)//获取插入的数据的sql     _valid($data)//验证数据合法性,当时验证vrule中指定的字段,并且只当$date中这支了其值是才验证         _initFindParams($params)     _joinModel(&$table,$join)//按指定的方式LEFT,JOIN指定关系的表     _getHoinString($relation_info)     getRelation($relation_name = null)//获取关系信息     getRelationByType($relation)     assemble($relation_name,$assoc_date,$pri_date)     dateEnough($date)     getRequiredFields()//获取必须的字段列表        function getOne($sql)    {        return $this->db->getOne($sql);    }    function getRow($sql)    {        return $this->db->getRow($sql);    }    function getCol($sql)    {        return $this->db->getCol($sql);    }    function getAll($sql)    {        return $this->db->getAll($sql);    }-------------------------------------------------------------------------------------------------------------------------------------  includes/global.lib.php 函数库   &cache_server() //缓存  >($type, $params = array()) // 获取商品类型对象  &ot($type, $params = array()) // 获取订单类型对象  &af($type, $params = array()) // 获取数组文件对象  ---------------------------  &ms() //连接会员系统  portrait($user_id, $portrait, $size = 'big') // 获取用户头像地址  &env($key, $val = null) //获取环境变量  order_status($order_status) //获取订单状态相应的文字表述  order_status_translator($order_status_text) //转换订单状态值  get_mail($mail_tpl, $var = array()) // 获取邮件内容  get_msg($msg_tpl, $var = array()) //获取消息内容  &get_mailer() // 获取邮件发送网关  list_template($who,$type='') //模板列表  list_style($who, $template = 'default',$type='') // 列表风格  list_widget() //获取挂件列表  get_widget_info($name) //获取挂件信息  i18n_code()  gmstr2time_end($str) //从字符串获取指定日期的结束时间(24:00)  参数格式“2017-7-11” 最终结果:2017-7-12 00:00:00 ----------------------------------------------  url($query, $rewrite_name = null,$page = false) //获取URL地址  &rewrite_engine() //获取rewrite engine  groupbuy_state_translator($state_text) //  转换团购活动状态值  group_state($group_state) // 获取团购状态相应的文字表述  lefttime($time, $format = null) // 计算剩余时间  array_msort($array, $cols) //多维数组排序(多用于文件数组数据)  short_msg_filter($string) //短消息过滤-------------------------------------------------------------------------------------------------------------------------------------      ecmall/app/frontend.base.php     太多啦,抽空自己看 (→_→)-------------------------------------------------------------------------------------------------------------------------------------     ecmall/eccore/model/mysql.php              类 cls_mysql方法 __construct($params,$db)     cls_mysql()//db构造函数     connect($dbhost, $dbuser, $dbpw, $dbname = '', $charset = 'utf8', $pconnect = 0, $quiet = 0)//连接数据库     select_database($dbname)     set_mysql_charset($charset)     fetch_array($charset)     query($sql,$type = '',$times=0)     function prefix($sql)    {        return preg_replace('/\s\`ecm_(.+?)\`([,|\s]?)/', ' ' .DB_PREFIX. '$1$2', $sql);    }    function affected_rows()    {        return mysql_affected_rows($this->_link_id);    }    function error()    {        return mysql_error($this->_link_id);    }    function errno()    {        return mysql_errno($this->_link_id);    }    function result($query, $row)    {        return @mysql_result($query, $row);    }    function num_rows($query)    {        return mysql_num_rows($query);    }    function num_fields($query)    {        return mysql_num_fields($query);    }    function free_result($query)    {        return mysql_free_result($query);    }    function insert_id()    {        return mysql_insert_id($this->_link_id);    }    function fetchRow($query)    {        return mysql_fetch_assoc($query);    }    function fetch_fields($query)    {        return mysql_fetch_field($query);    }    function version()    {        return $this->version;    }    function ping()    {        if (PHP_VERSION >= '4.3')        {            return mysql_ping($this->_link_id);        }        else        {            return false;        }    }    function escape_string($d_string)    {        if (PHP_VERSION >= '4.3')        {            return mysql_real_escape_string($d_string);        }        else        {            return mysql_escape_string($d_string);        }    }    function close()    {        return mysql_close($this->_link_id);    }       ErrorMsg($message = '',$sql = '')    selectLimit($sql,$num,$start = 0)//仿真 Adodb 函数    getOne($sql,$limited = false)    getOneCache($sql,$cached = 'FILEFIRST')    getAll($sql)    getAllWithIndex($sql_statement,$index_key)//以主键索引形式返回结果集    getAllCached($sql, $cached = 'FILEFIRST')    getRow($sql,$limited = false)    getRowCached($sql,$cached = 'FILEFIRST')    getCol($sql)    getColCached($sql,$cached = 'FILEFIRST')    autoExecute($table,$field_values,$mode = 'INSERT',$where = '',$querymode = '')    autoReplace($table,$field_values,$update_values,$where = '',$querymode = '')       setMaxCacheTime($second)    getMaxCacheTime()    getSqlCacheData($sql,$cached = '')//获取数据记录集缓存    setSqlCacheData($result,$data)    table_lastupdate($tables)//获取 SQL 语句中最后更新的表的时间,有多个表的情况下,返回最新的表的时间    get_table_name($query_item)    set_disable_cache_tables($tables)//设置不允许缓存的表 -------------------------------------------------------------------------------------------------------------------------------     ecmall/eccore/view/template.php类 ecsTemplate方法 __construct     ecsTemplate     assign($tpl_var,$value = '')     display($filename,$cache_id = '')//显示页面函数     display_cache()//显示缓存数据     fetch($filename,$cache_id = '')//处理模板文件     make_compiled($filename)//编译模板函数                fetch_str($source)     is_cached($filename,cache_id = '')     select($tag)//处理()标签     get_val($val)//处理smarty标签中的变量标签     make_var($val)//处理去掉$的字符     &get_tempalte_vars($name = null)     _compile_if_tag($tag_args,$elseif = false)     _compile_foreach_start($tag_args)     push_vars($key,$val)//将foreach的key,item放入临时数组     pop_vars()//弹出临时数组的最后一个     _compile_smarty_ref(&$indexes)//处理smarty揩油的预定义变量     Java_script($args)//脚本标签     style($args)//样式标签     smarty_prefilter_preCompile($source)//替换模板中图片路径     url_rewrite($arr)// 返回URL重写后的字符串         insert_mod($name)//处理动态内容     str_trim($str)//处理'a=b c=d k=f'类字符串,返回数组     _eval_r($content)     _require($filename)     _html_options($arr)     display_widgets($arr)     html_radion($arr)         html_checkbox($arr)     html_page_links($arr)     _init_page_param($arr)     html_page_selector($arr)     html_page_simple($arr)     html_img_yesorno($arr)     html_sort_link($arr)     cycle($arr)     image($arr)     make_array($arr)     smarty_create_pages($pagams)     get_custom_model($id,$dir)//获取自定义模块     get_lang($key)//编译时解析语言     _sprintf($arr)//解析sprinf标签        ------------------------------------------------------------------------------------------------------------------------------- ecmall/eccore/controller/app.base.php控制器基础类 BaseApp extends Object方法 _construct     BaseApp     do_action     index     assign($k, $v = null)//给视图传递变量     display($n)//显示视图     _init_view()//初始化视图连接     _config_view()//配置视图     _run_action()//运行动作     _init_view()//初始化Session     _get_run_time($precision = 5)//获取程序运行时间     destruct()//控制器结束运行后执行     import_from_csv($filename,$header = true,$from_charset = '',$to_charset = '',$delimiter = ',')     export_to_csv($data,$filename,$to_charset = '')//导出csv文件     _replace_special_char($str,$replace = true)   ------------------------------------------------------------------------------------------------------------------------------- ecmall/eccore/controller/message.base.php消息接收方法 _trigger_message($arr)      show_message($msg)      show_warning($msg)      _message($msg,$type)      exception_handler($errno,$errstr,$errfile,$errline)      put_log($err,$msg,$file,$line)//写入log文件类   Message extends MessageBase方法 _construct($str='',$errno=null)     Message($str,$errno = null)     handle_meassage($msg)     report_link($err,$msg,$file,$line)//生成bug报告连接     add_link($text,$href='javascript:history.back()')//添加一个连接到消息页面     display()//显示消息页面


修改了一些错误,以及新增了一点

文章转载自:http://blog.sina.com.cn/s/blog_74ade77001011ms7.html