前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在ThinkPHP中引入第三方类库

如何在ThinkPHP中引入第三方类库

作者头像
PM吃瓜
发布2019-08-13 10:54:50
1.9K0
发布2019-08-13 10:54:50
举报

thinkphp3.2.x是一个非常强大的框架,但它并不是万能的,有时候需要第三方扩展类库加入到里面来使用。 这里介绍一下Thinkphp3.2.3导入第三方扩展类库。

第三方类库

第三方类库指除了 ThinkPHP 框架、应用项目类库之外的其他类库,一般由第三方系统或产品提供,如 Smarty、Zend 等系统的类库等。

前面使用自动加载或 import 方法导入的类库,ThinkPHP 约定是以 .class.php 为后缀的,非这类的后缀,需要通过 import 的参数来控制。

但对第三类库,由于不会有此约定,其后缀只能认为是 php 。为了方便的引入其他框架和系统的类库,ThinkPHP 特意提供了导入第三方类库的功能。第三方类库统一放置在 ThinkPHP系统目录/Vendor 下面,并且使用 vendor 方法导入。

vendor 方法

语法:

boolen vendor(class, baseUrl, ext)

参数说明:

参数    说明class    必须,表示要导入的类库,采用命名空间的方式。
baseUrl    可选,表示导入的基础路径,省略的话系统采用 ThinkPHP系统目录/Vendor 目录。
ext    可选,表示导入的类库后缀,默认是 .php 。

与 import 方法的区别在于,vendor 方法默认的导入路径为 ThinkPHP系统目录/Vendor 目录,默认后缀为 .php 。

使用

当我们想在ThinkPHP中引入第三方扩展,而第三方扩展又没有按照ThinkPHP的规范在编写的时候时,就需要将第三方扩展放置到Library/Vendor目录下,当然,这是针对ThinkPHP 3.2而言,低版本则根据情况来看了。

然后需要在Controller或function中使用第三方扩展时,就可以直接使用vendor()方法来进行引用了。

1、首先,我们在ThinkPHP/Library/Verdor下面创建一个文件夹,假设叫Lanar2 2、第三方扩展类库的文件名为Lunar1.php,复制到Lunar2这个文件下来 3、假设这个Lunar1.php里面定义的是class Lunar{…… 在控制器中使用这个扩展类库的方法是 Vendor("Lunar2.Lunar1"); $lunar = new \Lunar(); $month = $lunar->convertSolarToLunar(2017,7,14); print_r($month);

/**
* 生成二维码
* @param  string  $url  url连接
* @param  integer $size 尺寸 纯数字
*/
function qrcode($url,$size=4){    
Vendor('Phpqrcode.phpqrcode');    
if (strpos($url, 'http')===false) {      
    $url='http://'.$url;
   }
   QRcode::png($url,false,QR_ECLEVEL_L,$size,2,false,0xFFFFFF,0x000000);
}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Tech爬虫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第三方类库
  • vendor 方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档