2017-01-29 2 views
2

最近私のプロジェクトをlaravelに移動しました。私のプロジェクトでは、共通の変数を含む単一のファイルがあります。
マイcommon.phpがファイルには、アプリ/ Libsの/ common.phpのでLaravel自動ロードファイルビューからの変数

$a = array(
    'b' => 'c' 
); 

である私も、私の一般的なファイルがcomposer.jsonファイル内にある追加。
マイcomposer.jsonファイル

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

今私はビューでこの変数にアクセスしたいです。
マイビューファイル:

<?php print_r($a); ?> 

それは以下のエラー私に与える:

Undefined variable a (View: ...) 
+0

作曲ダンプ、自動ロード? – esemve

+0

この質問を公開する前に、composer dump-autoloadを使用しました – Alien

答えて

1

グローバル変数は非常に間違った方法。これを試してみてください:

はあなたのcommon.phpの変更:

<?php return array('a' => array(
    'b' => 'c' 
)); 

をあなたのconfigフォルダにcommon.phpはを作成し、そこにこれを置く:

<?php return require app_path('Libs/common.php'); 

あなたの変数を使用することができた後:

config('common.a') 

または

config('common.a.b') 

あなたが唯一の共通のビューであなたの変数を使用したい場合は、あなたのプロバイダに表示作曲を使用することができ、またはあなたがすべてのビューファイルを使用してvaraiblesを共有するprivederを作成することができます

関連する問題