zoukankan      html  css  js  c++  java
  • 话说TP框架里的Vendor这目录是干什么用的啊?类库扩展thinkphp3.1版本



    类库扩展包括基类库扩展、应用类库扩展和第三方类库扩展,所有扩展类库不会自动加载,需要手动加载或者定义别名和配置自动加载(详细可以参考4.2.3类库导入和4.2.5自动加载)。
    1

    基类库扩展

    目前支持的基类库扩展包括ORG(第三方公共类库包)和Com(企业类库包)。你可以在ORG类库目录下面添加自己需要的类库,你甚至还可以创建属于自己企业的类库,只需要在Extend/Library目录下面创建Com目录,然后在里面增加相应的类库就可以方便的使用import方法导入了。例如,我们在Extend/Library/Com下面创建了Sina目录,并且放了Util\UnitTest.class.php类库文件,可以使用下面的方式导入
    1. import('Com.Sina.Util.UnitTest');
    目前官方提供的扩展或者第三方扩展都在ORG类库包下面。

    应用类库扩展

    项目类库的扩展,和基类库的扩展一样,我们可以在项目类库目录增加你想要的子目录,也只有在项目类库目录下面增加的类库才能使用import方法导入。例如,我们在MyApp的项目类库目录Lib下面增加Common和Util目录,就可以这样加载这些目录下面的类库文件了:
    1. import('MyApp.Util.UnitTest');
    2. import('@.Common.CommonUtil');

    第三方类库扩展

    如果你直接使用的是第三方的类库包,或者是类名和后缀和ThinkPHP的默认规则不符合的,我们建议你放到第三方类库扩展目录Extend/Vendor目录下面,并使用vendor方法来导入。
    例如,我们把Zend的Filter\Dir.php 放到Vendor目录下面,这个时候Dir文件的路径就是
    Vendor\Zend\Filter\Dir.php,我们使用vendor方法导入就是:
    1. Vendor('Zend.Filter.Dir');
    需要注意的是,vendor方法默认导入的类库后缀是php的而不是class.php的,如果你的第三方类库的后缀是class.php,可以使用:
    1. Vendor('Zend.Filter.Dir','','.class.php');
    或者使用:
    1. import('Zend.Filter.Dir',VENDOR_PATH);
    通过使用第三方类库扩展,我们可以直接使用Zend、CI或者其他框架中的类库。
  • 相关阅读:
    两个栈实现一个队列,C语言实现,队列可伸缩,容纳任意数目的元素。
    创建双向链表的一个陷阱!!
    实现单链表的倒置
    《征服c指针》学习笔记-----统计文本单词数目的程序word_count
    [stm32]IAR环境 hardfault定位
    [FreeRTOS] 函数笔记
    [C语言]字符串函数大全
    [verilog]常用任务之模拟UART Rxd引脚输入数据
    [git] 知识点
    [FreeRTOS] 临界区处理
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15455144.html
Copyright © 2011-2022 走看看