Laravel 加载第三方类库的方法
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);
好了,调用无误。完成!以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
您可能感兴趣的文章:
- 关于Laravel Service Provider开发设置延迟加载时遇到的问题详解
- Laravel框架中composer自动加载的实现分析
- Laravel中Facade的加载过程与原理详解
- 如何利用预加载优化Laravel Model查询详解
- laravel容器延迟加载以及auth扩展详解
相关推荐
-
Laravel框架中composer自动加载的实现分析
基础 自动加载允许你通过即用即加载的方式来加载需要的类文件,而不用每次都写繁琐的require 和include语句.因此,每一次请求的执行过程都只加载必须的类,也不不要关心类的加载问题,只要需要的时候直接使用即可. laravel 框架是通过composer 实现的自动加载. 是通过 下面的代码实现的. require_once __DIR__ . '/composer' . '/autoload_real.php'; return ComposerAutoloaderInit7b20e4d
-
laravel容器延迟加载以及auth扩展详解
昨天按照手册教程,动手写一个Auth扩展,按照包独立性的原则,我不希望将Auth::extend()这种方法写在 start.php 中,毫无疑问,我选择了在服务提供器register()方法中注册扩展驱动.然而,事与愿违-- 发现问题 当我在 LoauthServiceProvider 中这样写的时候: 复制代码 代码如下: public function register() { // \Auth::extend('loauth',function($app){}); } 报
-
关于Laravel Service Provider开发设置延迟加载时遇到的问题详解
前言 本文主要介绍了关于Laravel Service Provider设置延迟加载时遇到的一些问题,之所有这篇文章,是因实际项目需求,近日在开发 laravel-database-logger 包的时候,发现设置 ServiceProvider defer 属性设置为 true 时,会导致在 register 方法中注册的 middleware 无效. class ServiceProvider extends \Illuminate\Support\ServiceProvider { pro
-
Laravel中Facade的加载过程与原理详解
前言 本文主要给大家介绍了关于Laravel中Facade加载过程与原理的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 简介 Facades(读音:/fəˈsäd/ )为应用程序的 服务容器 中可用的类提供了一个「静态」接口.你不必 use 一大串的命名空间,也不用实例化对象,就能访问对象的具体方法. use Config; class Test { public function index() { return Config::get('app.name');
-
如何利用预加载优化Laravel Model查询详解
前言 本文主要给大家介绍了关于利用预加载优化Laravel Model查询的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍: 介绍 对象关系映射(ORM)使数据库的工作变得非常简单. 在以面向对象的方式定义数据库关系时,可以轻松查询相关的模型数据,开发人员可能不会注意底层数据库调用. 下面将通过一些例子,进一步帮助您了解如何优化查询. 假设您从数据库收到了100个对象,并且每个记录都有1个关联模型(即belongsTo). 默认使用ORM将产生101个查询; 如下所示: //
-
Laravel 加载第三方类库的方法
Laravel 版本:5.5 有很多第三方的类库并没有制作 Composer,而是还以 require 的方式进行加载.对于此类的类库,我们只要小粒度的修改,就可以进行使用.我以极验 geetest 和邮件服务 SendCloud 为例. 在 Laravel 框架中建立存放第三方的 SDK 目录 mkdir app/Libraries 放置 geetest.SendCloud 的 SDK 官方下载后相关 SDK 后,移动到 app/Libraries 目录下: app/Libraries/sen
-
使用composer命令加载vendor中的第三方类库 的方法
1.首先下载需要的第三方类库,放在TP框架下的vendor文件夹下 2.给第三方类库SDK写上命名空间,命名空间为该类库的文件夹对应的名字 3.在composer.json文件中添加需要加载的第三方类库 4.打开cmd,进入到项目根目录,使用composer命令加载第三方类库,执行composer dump-autoload,如下,成功即可 5.使用 在使用的地方直接用use引用需要的第三方类库即可. 要使用第3条中的 "sina\\": "vendor/sina"
-
PHP通过反射动态加载第三方类和获得类源码的实例
使用反射动态加载第三方类 用反射加载第三方类用处在于: 使用XML或其他配文件配置要加载的类,从而和系统源代码分离. 对加载的类进行类检查,是加载的类符合自己定义的结构. <?php abstract class Module { #核心Module类库 function baseFunc() { echo "I am baseFunc"; } abstract function execute(); } class ModuleRunner { private $configD
-
angular+ionic 的app上拉加载更新数据实现方法
第一步,首先需要在<ion-content>标签里面加入标签<ion-infinite-scroll ng-if="hasmore" on-infinite="loadMore()" distance="5%"></ion-infinite-scroll> 里面的属性解释, ng-if 值 布尔型,如果为true,则可以触发上拉事件 on-infinite 上拉时触发的事件 distance 列表底部滚动到可
-
jquery实现ajax加载超时提示的方法
本文实例讲述了jquery实现ajax加载超时提示的方法.分享给大家供大家参考,具体如下: index.php <!doctype html> <html> <head> <meta charset="utf-8"/> <title>加载超时</title> <script type="text/javascript" src="http://lib.sinaapp.com/js
-
javascript实现加载xml文件的方法
本文实例讲述了javascript加载xml文件的方法.分享给大家供大家参考,具体如下: //需要读取的xml文件 var uRl = "jsReadXml.xml"; var xmlDoc; //初始化,给上述定义变量赋值 // function showcurcity(){ if(window.ActiveXObject) { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="fal
-
jquery及js实现动态加载js文件的方法
本文实例讲述了jquery及js实现动态加载js文件的方法.分享给大家供大家参考,具体如下: 问题: 如果用jquery append直接加载script标签的话,会报错的.除了document.write外,还有没有其他的比较好的动态加载js文件的方法. 解决方法: 1.jquery方法 $.getScript("./test.js"); //加载js文件 $.getScript("./test.js",function(){ //加载test.js,成功后,并执
-
前端图片懒加载(lazyload)的实现方法(提高用户体验)
定义 图片懒加载又称图片延时加载.惰性加载,即在用户需要使用图片的时候加载,这样可以减少请求,节省带宽,提高页面加载速度,相对的,也能减少服务器压力. 惰性加载是程序人性化的一种体现,提高用户体验,防止一次性加载大量数据,而是根据用户需要进行资源的请求. 实现 懒加载的难点在于确定某张图片是否是用户需要的资源,在浏览器中,用户需要的是可视区内的资源,因此我们只需要判断图片是否已经呈现在可视区内,当图片呈现在可视区内时,获取图片的真实地址并赋给该图片即可(图片宽高需要指定,可以利用padding处
-
window.showModalDialog两次加载问题清除缓存方法
今天遇到这样一件事情, 复制代码 代码如下: var frmHeight = 352; var frmWidth = 508; var frmTop = (window.screen.height - frmHeight) / 2; var frmLeft = (window.screen.width - frmWidth / 2); var url = "ChosePerson.aspx"; var parameter = "dialogHeight:" + fr
-
php绘图之加载外部图片的方法
本文实例讲述了php绘图之加载外部图片的方法.分享给大家供大家参考.具体实现方法如下: 在实际应用中,就是常见的水印功能. 复制代码 代码如下: <?php //1.创建画布 $im = imagecreatetruecolor(300,200);//新建一个真彩色图像,默认背景是黑色,返回图像标识符.另外还有一个函数 imagecreate 已经不推荐使用. //2.加载外部图片 $im_new = imagecreatefromjpeg("baidu.jpg");//返回图像
随机推荐
- SQL2000中的默认sa帐号的修改与删除方法
- vue实现ToDoList简单实例
- Java微信公众平台开发(9) 关键字回复以及客服接口实现
- php使用google地图应用实例
- ASP.NET的适配器设计模式(Adapter)应用详解
- asp.net服务器端指令include的使用及优势介绍
- php转换颜色为其反色的方法
- PHP写的求多项式导数的函数代码
- Go语言声明一个多行字符串的变量
- mysql导入sql文件命令和mysql远程登陆使用详解
- 完美解决ajax访问遇到Session失效的问题
- 低版本IE正常运行HTML5+CSS3网站的3种解决方案
- php微信公众号开发(4)php实现自定义关键字回复
- javascript下有关dom以及xml节点访问兼容问题
- JavaScript获取页面中超链接数量的方法
- 分享jQuery插件的学习笔记
- js控制CSS样式属性语法对照表
- 浅谈EasyUI常用控件的禁用方法
- Windows 2003服务器权限详细配置方案第1/9页
- 绝招:隐藏管理员账号 三分钟搞定