55. Yii import class 与 对象创建

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述


1.获取别名:
这里写图片描述
这里写图片描述

2.设置别名:
这里写图片描述
这里写图片描述

3.import 一个类
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

  1. import 一个目录
    这里写图片描述
    这里写图片描述
    这里写图片描述
    这里写图片描述

5.自动加载

1.先判断是否 self::$classMap2.判断是否在 self::$_coreClassespublic static function autoload($className,$classMapOnly=false)
    {
        self::$classMap['CLogger'] = '/logging/CLogger.php';
        // use include so that the error PHP file may appear
        if(isset(self::$classMap[$className])) {
            include(self::$classMap[$className]);
        } elseif(isset(self::$_coreClasses[$className])) {
            //echo (YII_PATH.self::$_coreClasses[$className]);die;
            include(YII_PATH.self::$_coreClasses[$className]);
        } elseif($classMapOnly) {
            return false;
        } else
        {
            // include class file relying on include_path
            if(strpos($className,'\\')===false)  // class without namespace
            {
                if(self::$enableIncludePath===false)
                {
                    foreach(self::$_includePaths as $path)
                    {
                        $classFile=$path.DIRECTORY_SEPARATOR.$className.'.php';
                        if(is_file($classFile))
                        {
                            include($classFile);
                            if(YII_DEBUG && basename(realpath($classFile))!==$className.'.php')
                                throw new CException(Yii::t('yii','Class name "{class}" does not match class file "{file}".', array(
                                    '{class}'=>$className,
                                    '{file}'=>$classFile,
                                )));
                            break;
                        }
                    }
                }
                else {
                    include($className.'.php');
                }

            }
            else  // class name with namespace in PHP 5.3
            {
                $namespace=str_replace('\\','.',ltrim($className,'\\'));
                if(($path=self::getPathOfAlias($namespace))!==false && is_file($path.'.php')) {
                    include($path.'.php');
                }
                else {
                    return false;
                }
            }
            return class_exists($className,false) || interface_exists($className,false);
        }
        return true;
    }
  1. 使用Class Map
    这里写图片描述

7.使用命名空间的类
这里写图片描述

8.使用Yii::createComponent()
这里写图片描述
这里写图片描述
这里写图片描述


http://www.yiichina.com/doc/guide/1.1/basics.namespace

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值