2017-07-05 162 views
0

我有一個RSA算法庫由支付網關給我,當我做了添加第三方庫Laravel

include (app_path().'/PaymentGateway/Crypt/RSA.php'); 

這一點,並試圖爲$rsa = new Crypt_RSA();這一點,讓我和錯誤說使物體

Class 'App\Http\Controllers\Crypt_RSA' not found 

我試圖將其納入web.php,使一個對象,它的工作,當我嘗試將其包含在一個控制器出現問題。

+0

嘗試PSR-自動加載它在composer.json。 – mighTY

+0

會友好地解釋一下嗎? –

回答

0

在默認情況下,包含在你的laravel項目的app文件夾一切都自動加載,即在項目的composer.json描述:

...   
"autoload": { 
     "classmap": [ 
      "database" 
     ], 
     "psr-4": { 
      "App\\": "app/" 
     } 
    }, 
... 

,你需要做的唯一事情是簡單地使用名稱空間:

use App/Path/To/Third/Party/plugin/Class; 

然而,如果該插件被放置App的範圍之外,則簡單地將其添加到PSR-4自動加載機:

"psr-4": { 
     "ProjectRootNs\\": "projects/myproject/" 
    } 
0

您可以通過將基本文件夾告訴Composer來自動加載任何(非PSR)類:

"autoload": { 
"classmap": [ 
    "app/commands", 
    "app/database/migrations", 
    "app/database/seeds", 
    "app/tests/TestCase.php" 
], 
.... 

,你也可以自動加載磁帶自動加載機將它們添加到該文件部分:

"autoload": { 
"files": [ 
    "temboo/src/Temboo_Loader.php" 
], 

...

添加這些條目後,執行:

composer dumpautoload 

並檢查文件供應商/作曲家/ autoload_classmap.php,可用的類必須全部列在其中,如果一個文件不存在,它將不會自動加載。

0

這就是我所做的。哦,一個小回地面我用有這Laravel 4,PHP 5,JpGraph的2

我使用jpgraph 4.1Laravel 5.5使用PHP 7

  1. 下創建應用程序的文件夾名爲jpgraph
  2. 放在src文件夾是在JpGraph的的壓縮包文件夾中
  3. 創建文件調用Graph1.php,是我的代碼使用jpgraph的,隨着階級Custom_GraphsJMjpgraph文件夾。
  4. composer.json添加"app/jpgraph/Graph1.php""classmap"

    "autoload": { 
        "classmap": [ 
        "database/seeds", 
        "database/factories", 
        "app/jpgraph/Graph1.php" 
        ], 
        "psr-4": { 
        "App\\": "app/" 
        } 
    }, 
    
  5. 在應用程序文件夾:

    composer dump-autoload

  6. 經過了autoload_classmap.php和我有

    'Custom_GraphsJM' => $baseDir . '/app/jpgraph/Graph1.php',

  7. 在我的頂級車型我有

    use Custom_GraphsJM;

  8. 要創建一個類

    $Two_Graphs_Temp = new Custom_GraphsJM();