zoukankan      html  css  js  c++  java
  • ecshop类的解析1

    前面写了一下我理解的ecshop数据库表,现在看一下我理解的ecshop的类。

    ecshop类,ECS是一个基础类,它的取得域名的函数我感觉是比较不错的。

    function get_domain()
    {
    /* 协议 */
    $protocol = $this->http();

    /* 域名或IP地址 */
    if (isset($_SERVER['HTTP_X_FORWARDED_HOST']))
    {
    $host = $_SERVER['HTTP_X_FORWARDED_HOST'];
    }
    elseif (isset($_SERVER['HTTP_HOST']))
    {
    $host = $_SERVER['HTTP_HOST'];
    }
    else
    {
    /* 端口 */
    if (isset($_SERVER['SERVER_PORT']))
    {
    $port = ':' . $_SERVER['SERVER_PORT'];

    if ((':80' == $port && 'http://' == $protocol) || (':443' == $port && 'https://' == $protocol))
    {
    $port = '';
    }
    }
    else
    {
    $port = '';
    }

    if (isset($_SERVER['SERVER_NAME']))
    {
    $host = $_SERVER['SERVER_NAME'] . $port;
    }
    elseif (isset($_SERVER['SERVER_ADDR']))
    {
    $host = $_SERVER['SERVER_ADDR'] . $port;
    }
    }

    return $protocol . $host;
    }

    //判断http或者https协议的函数

    function http()
    {
    return (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) ? 'https://' : 'http://';
    }

    简体繁体中文,big5,utf8字符替换类iconv,这也是ecshop能够兼容低版本php,字符不出现乱码的主要类。

    var $config = array(
    'codetable_dir' => '', // 存放各种语言互换表的目录
    'source_lang' => '', // 字符的原编码
    'target_lang' => '', // 转换后的编码
    'GBtoBIG5_table' => 'gb-big5.table', // 简体中文转换为繁体中文的对照表
    'BIG5toGB_table' => 'big5-gb.table', // 繁体中文转换为简体中文的对照表
    'GBtoUTF8_table' => 'gb_utf8.php', // 简体中文转换为UTF-8的对照表
    'BIG5toUTF8_table' => 'big5_utf8.php' // 繁体中文转换为UTF-8的对照表
    );

    初始化变量。

     function Convert($source_lang, $target_lang, $source_string = '')

    Convert函数是这个类的主要函数,主要是因为调用了下面多个子函数,具体的可以看这个类,以后如果要用低版本的php,可以用这个类来补充mbstring扩展(用到这个类的时候,需要辅助文件支持,就是ecshop的codetable文件夹里面的文件)。

  • 相关阅读:
    P1064 金明的预算方案
    P1062 数列
    P2258 子矩阵
    P1095 守望者的逃离
    P1201 [USACO1.1]贪婪的送礼者Greedy Gift Givers
    P1203 [USACO1.1]坏掉的项链Broken Necklace
    P1478 陶陶摘苹果(升级版)
    P2485 [SDOI2011]计算器
    逆元模板
    CloudStack 物理网络架构
  • 原文地址:https://www.cnblogs.com/liuwenbohhh/p/4693225.html
Copyright © 2011-2022 走看看