2017-06-25 20 views
0

私のlaravel 5.4アプリケーションにsourceという名前のフォルダがあります。私のコントローラコードでは頻繁に静かに使用しています。laravelでクラス変数としてpublicディレクトリを設定する方法

例えば、文public_path() . '/source/'がコードの多くの場所で使用されているので、コントローラレベルの変数としてpublic_path() . '/source/'ディレクトリを定義します。この方法では、ディレクトリを使用するすべてのコントローラ関数で変数名を使用するだけです。

これは私が試したものですし、それが失敗見て驚きました。

class PostController extends Controller 
{ 
    public $source_dir = public_path() . '/source/'; 
} 

しかし$source_dirが定義されている行に、アプリケーションは次のエラー与える:任意のための

FatalErrorException syntax error, unexpected '(', expecting ',' or ';'

感謝を助けて!

答えて

1

私も正確にはわかりませんが、グローバル属性クラスはその関数を認識できません。コンストラクタで割り当てることができます

class PostController extends Controller 
{ 
    public $source_dir; 
    public function __construct() 
    { 
    $this->source_dir = public_path('/source/'); 
    } 
} 
関連する問題