Laravel 加载第三方类库的方法


Posted in PHP onApril 20, 2018

Laravel 版本:5.5

有很多第三方的类库并没有制作 Composer,而是还以 require 的方式进行加载。对于此类的类库,我们只要小粒度的修改,就可以进行使用。我以极验 geetest 和邮件服务 SendCloud 为例。

在 Laravel 框架中建立存放第三方的 SDK 目录

mkdir app/Libraries

放置 geetest、SendCloud 的 SDK

官方下载后相关 SDK 后,移动到 app/Libraries 目录下:

app/Libraries/sendcloud-php-sdk
app/Libraries/gt3-php-sdk

注意各自 SDK 目录下是否存在 .git 目录,如果存在的话,记得递归删除掉 .git 目录。是 SDK 目录下的 .git 目录,千万不要删除错。

修改 composer.json 文件

...
  "autoload": {
    "classmap": [
      "database/seeds",
      "database/factories",
      "app/Libraries/sendcloud-php-sdk/lib",
      "app/Libraries/gt3-php-sdk"
    ],
    "psr-4": {
      "App\\": "app/"
    }
  },
...

在 autoload -> classmap 下,增加了 app/Libraries/sendcloud-php-sdk/lib、app/Libraries/gt3-php-sdk。

执行 composer 命令

Laravel 项目中执行:

composer dump-autoload

这样就完成了。

关于使用

例如在 Laravel 控制器中进行使用

$objSendCloud = new \SendCloud(API_USER, API_KEY[, VERSION]);
$objGeetestLib = new \GeetestLib(CAPTCHA_ID, PRIVATE_KEY);

好了,调用无误。完成!以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php中处理模拟rewrite 效果
Dec 09 PHP
PHP 采集程序 常用函数
Dec 18 PHP
PHP写杨辉三角实例代码
Jul 17 PHP
php 文本文件的读取效率
Feb 10 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
php中注册器模式类用法实例分析
Nov 03 PHP
PHP中overload与override的区别
Feb 13 PHP
PHP利用正则表达式将相对路径转成绝对路径的方法示例
Feb 28 PHP
完美解决Thinkphp3.2中插入相同数据的问题
Aug 01 PHP
PHP的curl函数的用法总结
Feb 14 PHP
Laravel 默认邮箱登录改成用户名登录的实现方法
Aug 12 PHP
Laravel框架源码解析之反射的使用详解
May 14 PHP
PHP迭代器和迭代的实现与使用方法分析
Apr 19 #PHP
详解php curl带有csrf-token验证模拟提交方法
Apr 18 #PHP
php-app开发接口加密详解
Apr 18 #PHP
PHPMAILER实现PHP发邮件功能
Apr 18 #PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 #PHP
php无限级评论嵌套实现代码
Apr 18 #PHP
PHP实现负载均衡下的session共用功能
Apr 17 #PHP
You might like
php数组合并的二种方法
2014/03/21 PHP
Yii配置文件用法详解
2014/12/04 PHP
PHP内存使用情况如何获取
2015/10/10 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
从JavaScript的函数重名看其初始化方式
2007/03/08 Javascript
jquery下组织javascript代码(js函数化)
2010/08/25 Javascript
jquery的index方法实现tab效果
2011/02/16 Javascript
javascript开发技术大全 第4章 直接量与字符集
2011/07/03 Javascript
深入了解javascript中的prototype与继承
2013/04/14 Javascript
JS中字符串trim()使用示例
2015/05/26 Javascript
谈谈impress.js初步理解
2015/09/09 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
JavaScript实现弹出DIV层同时页面背景渐变成半透明效果
2016/03/25 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
微信公众号 客服接口的开发实例详解
2016/09/28 Javascript
简单实现IONIC购物车功能
2017/01/10 Javascript
Vue数据驱动模拟实现2
2017/01/11 Javascript
node和vue实现商城用户地址模块
2018/12/05 Javascript
基于Vue中的父子传值问题解决
2020/07/27 Javascript
Vue 解决通过this.$refs来获取DOM或者组件报错问题
2020/07/28 Javascript
vue 判断元素内容是否超过宽度的方式
2020/07/29 Javascript
[03:53]2016国际邀请赛中国区预选赛第三日TOP10精彩集锦
2016/06/29 DOTA
[02:07]DOTA2新英雄展现中国元素,完美“圣典”亮相央视
2016/12/19 DOTA
实例讲解Python中SocketServer模块处理网络请求的用法
2016/06/28 Python
使用python编写监听端
2018/04/12 Python
Django 开发调试工具 Django-debug-toolbar使用详解
2019/07/23 Python
Pycharm debug调试时带参数过程解析
2020/02/03 Python
python脚本第一行如何写
2020/08/30 Python
酒店服务与管理毕业生求职信
2013/11/02 职场文书
开办饭店创业计划书
2013/12/28 职场文书
会议活动邀请函
2014/01/27 职场文书
计算机求职信
2014/07/02 职场文书
小学优秀学生评语
2014/12/29 职场文书
2015年党建工作汇报材料
2015/06/25 职场文书
深入详解JS函数的柯里化
2021/06/09 Javascript
java高级用法JNA强大的Memory和Pointer
2022/04/19 Java/Android