要将该软件包与Laravel集成,您需要创建自定义服务提供程序。 Laravel docs有完整过程的一个很好的例子这对于你的情况是相似的:
创建一个服务提供商
php artisan make:provider TextRankServiceProvider
定制服务提供商的(文件)
<?php
namespace App\Providers;
use crodas\TextRank\Config;
use crodas\TextRank\TextRank;
use Illuminate\Support\ServiceProvider;
class TextRankServiceProvider extends ServiceProvider
{
/**
* Register bindings in the container.
*
* @return void
*/
public function register()
{
$this->app->singleton('TextRank', function ($app) {
$config = new Config;
return new TextRank($config);
});
}
}
Register service provider将App\Providers\TextRankServiceProvider::class
添加到文件config/app.php
对于使用包年龄
$keywords = app('TextRank')->getKeywords($some_long_text);
注意:该代码尚未经过实际测试。我只是遵循TextRank包和Laravel的说明。
嘿Javi,我仍然得到类'crodas \ TextRank \ Config找不到错误。我也试图简单地跟随这两个文档。任何其他想法?我发现奇怪的是,错误行在注册方法中,而不是顶部的使用语句。 – Damian
我现在试过了代码,它的工作原理。 '未找到类'表示作曲家无法找到该类。您是否使用Composer安装软件包?要做到这一点,添加''最小稳定性“:”开发“''你的'composer.json文件'和运行'作曲家需要crodas /文本排名' –
正如我在原来的帖子中说我用这个作为依赖我自己的包裹。我设法通过在您的示例的顶部添加作曲家自动载入文件来实现这一目标。 – Damian