Laravel5でTermExtractorを使用する

カール

Laravel 5でterm-extractor(https://packagist.org/packages/fivefilters/term-extractorというライブラリを使用したいのですが、composerを介してインストールしようとしました。

composer require "fivefilters/term-extractor:*" 

次のディレクトリが見つかったので、この手順は成功したと思います:vendor / fivefilters / term-extractor。同様に、composer.jsonに次の行が追加されました。

"require": {
        "laravel/framework": "5.0.*",
        "fivefilters/term-extractor": "*"
    },

しかし、この時点から、私はどのように進めるかわかりません。

パッケージは本当に私のアプリで利用できますか?用語エクストラクタをどのように使用できますか?で試してみると

$extractor = new TermExtractor();

それは機能しません。

ありがとう!

-

私はアランストームによって与えられたアドバイスに従いました-どうもありがとう!

  1. Composerdumpautoloadを実行しています

    composer dumpautoload
    Generating autoload files
    

大丈夫そうです。

  1. コードを実行する

    Whoops, looks like something went wrong.
    1/1 FatalErrorException in NewsletterController.php line 81: Class 'Fivefilters\TermExtractor' not found
    
    in NewsletterController.php line 81
    at HandleExceptions->fatalExceptionFromError(array('type' => '1', 'message' => 'Class 'Fivefilters\TermExtractor' not found', 'file' => '/Applications/MAMP/htdocs/newsletterfeed/app/Http/Controllers/NewsletterController.php', 'line' => '81')) in HandleExceptions.php line 116
    at HandleExceptions->handleShutdown()
    

81行目で見つけた場所

$extractor = new TermExtractor();

何が問題になっているのか提案はありますか?どうもありがとう!

アランストーム

あなたがしたことは

  1. パッケージcomposer.jsonを使用するようにファイルを構成しますfivefilters/term-extractor

  2. Composerを使用してfivefilters/term-extractorパッケージをvendorフォルダーにダウンロードしました

次に何をするかは、パッケージ開発者が最新のPHPの世界でうまく機能するようにパッケージをどれだけうまくセットアップしているかによって異なります。

あなたが検索する場合packagist上のパッケージは、パッケージのソースリポジトリがある見つけるのBitbucketで

あなたが見れば、パッケージのcomposer.jsonファイルは、次のオートローダー部分とそれのセットアップが表示されます

"autoload": {
    "psr-0": { 
        "TermExtractor": "",
        "Tagger": "",
        "PermissiveFilter": "",
        "DefaultFilter": ""
    }
}

詳細に立ち入ることなく(StackOverflowの答えは長すぎます-私のLaravel、Composer、および自動読み込みの状態を参照してください)、このpsr-0セクションは、PHPが「TermExtractor」クラスをから自動読み込みしようとする必要があることを意味します

vendor/fivefilters/term-extractor/TermExtractor.php

Laravel 5は、Compoerのオートローダーライブラリを自動的に使用するように設定されています。つまり、Laravelのブートストラップ環境からコードを記述している場合、必要なのは

$object = new TermExtractor();
var_dump(get_class($object));

それがうまくいかない場合、それは意味します

  1. のメンテナはfivefilters/term-extractor、オートローダーロジックにエラーがあります

  2. Composerが自動的に実行さcomposer dumpautoloadれていない

  3. Laravelのブートストラップ環境(app/routes.php、コントローラーファイルなど)からコードを実行していません

私は走ることから始めます

$ composer dumpautoload

それが役立つかどうかを確認します。エラーが投稿されない場合、または予期しない動作が発生した場合、およびこのコードを記述している場所(メインの質問に戻る)は、ここにいる人々がシステムの問題を診断するのに役立ちます。

更新:更新された質問に基づいて、次のエラー

おっと、何かがうまくいかなかったようです。1 / 1NewsletterController.php行81のFatalErrorException:クラス> 'Fivefilters \ TermExtractor'が見つかりません

Fivefilters名前空間にあるファイルからコードを実行しようとしているように聞こえます。すなわち。

namespace Fivefilters
//... other code
$extractor = new TermExtractor();

それはまったく意味がありません-コードが実行されているファイルに基づいて

app/Http/Controllers/NewsletterController.php

名前空間はであると思いますApp\Http\Controllersそれにもかかわらず、5つのフィルタークラスはすべてグローバル名前空間に存在するように見えます。つまり、名前空間付きのPHPファイルからそれらを使用する場合は、グローバルクラス(先頭\として明示的にそれらを参照する必要があります。

$object = new \TermExtractor;

またはuse、ファイルの先頭にあるステートメントを使用します

namespace Some/Non/Global/Namespace
//...
use TermExtractor;
//...
$extractor = new TermExtractor();

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Laravel5でckeditorを使用する方法

分類Dev

laravel5でmemcachedを使用する

分類Dev

Laravel5でDBを接続する

分類Dev

jqueryでLaravel5を使用してhrefを作成する

分類Dev

Laravel5で自分のJqueryを使用する方法

分類Dev

XAMPPデータベースでLaravel5を使用する

分類Dev

Laravel5でorderByとPaginateを同時に使用する方法

分類Dev

クエリlaravel5でget()を使用する場合

分類Dev

Laravel5で非LaravelパッケージLeague / csvを使用する

分類Dev

AngularJSブレードタグの競合でLaravel5を使用する

分類Dev

Laravel5で複数のテーブルに認証を使用する方法

分類Dev

複数のプロジェクトでLaravel5暗号化を使用する

分類Dev

サブページlaravel5でjsとcssを使用する方法

分類Dev

Laravel、Laravel5で集合を配列に変換する

分類Dev

phpseclibをLaravel5に統合する

分類Dev

認証laravel5を作成する

分類Dev

Laravel5でアプリの名前空間を取得する

分類Dev

Laravel5ミドルウェアでJSONを操作する

分類Dev

Laravel5でユーザーを作成する

分類Dev

Laravel5でRESTfulAPIを認証する方法は?

分類Dev

Laravel5でセッションを削除する方法

分類Dev

Laravel5でJWT-Authを設定する方法

分類Dev

Laravel5でキューを設定する

分類Dev

Laravel5で言語設定を検出する方法

分類Dev

laravel5でファイルを削除する際の問題

分類Dev

Laravel5でテーブル移行を作成する方法

分類Dev

Laravel5で編集モーダルを作成する

分類Dev

Laravel5でSQL関数を実行する

分類Dev

Laravel5のorderByDescで平均を取得する方法

Related 関連記事

ホットタグ

アーカイブ