Defines.class.php 2.68 KB
<?php

class Config_Defines
{

    /**
     * 设置缓存
     *
     * @param boolean $db
     * @param boolean $mem
     * @param boolean $apc
     * @param boolean $redis
     * @return void
     */
    public static function setCache($db = false, $mem = false, $apc = false, $redis = false)
    {
        // 数据库是否缓存
        define('UTIL_DB_CACHE', $db);
        // 数据库缓存默认时间
        define('UTIL_DB_CACHE_EXPIRE', 60);
        // memcache是否缓存
        define('UTIL_MEMCACHE_CACHE', $mem);
        // memcached是否缓存
        define('UTIL_MEMCACHED_CACHE', $mem);
        // APC是否缓存
        define('UTIL_APC_CACHE', $apc);
        // REDIS是否缓存
        define('UTIL_REDIS_CACHE', $redis);
    }

    /**
     * 设置公共常量
     * 
     * @param string $env (环境变量: 本地环境local, 测试环境test, 正式环境release)
     * @return void
     */
    public static function setVaribles($env = 'local')
    {
        switch ($env)
        {
            case 'release':
                self::setRelease();
                break;
            case 'test':
                self::setTest();
                break;
            case 'local':
                self::setLocal();
                break;
            default:
                self::setLocal();
        }

        $dir = dirname(dirname(__FILE__));

        // 目标版本
        define('RELEASE_ENV', $env);

        // 网站根目录
        define('SITE_ROOT_DIR', $dir . '/');
        // 数据库目录
        define('SITE_SQLMAP_DIR', $dir . '/sqlmap');
        // 配置目录
        define('SITE_CONFIG_PATH', $dir . '/config/core/');
    }

    /**
     * 本地环境
     */
    public static function setLocal()
    {
        self::setCache(false, false, false, false);

        // 主域名
        define('SITE_DOMAIN', '.yoho.cn');
        define('COOKIE_DOMAIN', 'passport.yoho.cn');
        // 主站
        define('SITE_MAIN', 'http://passport' . SITE_DOMAIN);
    }

    /**
     * 测试环境
     */
    public static function setTest()
    {
        //self::setCache(true, true, true, true);
        self::setCache(false, false, false, false);
        // 主域名
        define('SITE_DOMAIN', '.yoho.cn');
        define('COOKIE_DOMAIN', 'passport.yoho.cn');
        // 主站
        define('SITE_MAIN', 'http://passport' . SITE_DOMAIN);
    }

    /**
     * 正式环境
     */
    public static function setRelease()
    {
        self::setCache(true, true, true, true);

        // 主域名
        define('SITE_DOMAIN', '.yoho.cn');
        define('COOKIE_DOMAIN', 'passport.yoho.cn');
        // 主站
        define('SITE_MAIN', 'https://passport' . SITE_DOMAIN);
    }

}