作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Laravel 4,我想在此框架内使用第三方包。我这样做是为了安装它:
1)在composer.json文件中添加包名
2) 运行composer update
命令
现在我在/vendors 文件夹中有可用的包。我的问题是,现在如何在 Laravel 中使用它?
查看 config/app.php 文件,据我所知,我无法将其添加到“providers”数组,也无法添加“aliases”。
当我尝试直接在 Controller 中实例化该包类时,我收到错误“未找到类”(我尝试了该类的全名:$pack = new/vendor/package.../class.php
)
非常感谢任何有关如何在 laravel 中包含和使用该类的帮助
最佳答案
如果包提供了 ServiceProvider,将其添加到 app/config/app.php
。
否则 composer 已经为你自动加载了,所以你只需要:
$package = new Package;
在包被命名空间的情况下,你必须:
$package = new PackageNamespace\Package;
为了确定,看一下vendor/composer/autoload_*
文件,通常是vendor/composer/autoload_classmap.php
,搜索包名或类name 你会看到它是如何命名的。或者只看一下主包源文件,通常在:
vendor/vendorName/packageName/[src or lib or whatever]/Package.php
编辑
我刚刚在这里安装它并做了:
Route::get('test', function()
{
dd(new WideImage\WideImage);
});
像魅力一样工作。这个包在我上面写的“命名空间”案例中。
关于php - 如何在 Laravel 中使用第三方包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21530124/
我是一名优秀的程序员,十分优秀!