2016-09-29 4 views
0

Laravelには、ウェブサイトの各ページからアクセスする変数を格納するのに最適な設定ファイルがあります。現在app.phpの設定ファイルには含まれていますPHPでのLaravel設定の解析

return [ 
    'name' => 'This is a name', 
    'slogan' => 'This is a slogan!', 
    'primary_color' => '#cc0202', 
    'secondary_color' => '#990000', 
    'tertiary_color' => '#FFFFFF' 
]; 

これは、使用して、ブレード・コードによってアクセスされることができるのことばかり連想配列である:私は内からのデータを使用したいしかし

{{ config('app.primary_color', '#cc0202') }} 

をパブリックフォルダにある.phpファイル。パブリックフォルダ内のファイルはBladeを使用できません。このデータを取得する最良の方法は何ですか?データを設定するには

echo config('app.primary_color'); 

答えて

0

:laravelのドキュメントから

Service providers are the central place of all Laravel application bootstrapping. Your own application, as well as all of Laravel's core services are bootstrapped via service providers.

https://laravel.com/docs/5.3/providers、あなたはにlaracastsにこの便利なチュートリアルを見ることができます

$config = include '../config/app.php'; // Go back to main catalog 
             // and go to config catalog 

通常の配列として使用します。例

echo $config['primary_color']; 

のためではなく、私の意見では

あなたは、フレームワークを使用している場合publicカタログにPHPファイルを置くための非常に悪い習慣です。

0

は、アクセスして印刷するには、この

<?php $variable = config('app.primary_color', '#cc0202') ?> 
+0

「致命的なエラー:未定義の関数config()を呼び出す」 –

+0

そのPHPファイルで何をしたいのですか、それを電子メールなどに使用していますか?あなたがそれを伝えることができれば、私はあなたに解決策を提案することができます。 – Vikash

+0

phpファイルは、私のウェブサイトのすべてのページでアクセスされる変数を格納する設定ファイルです。それは1つの場所にそれらをすべて持っていると便利だろうが、私は公共のフォルダの中からconfig()関数にアクセスすることはできません –

0

を試してみてください

config(['app.primary_color' => '#cc0202']); 
+0

既にそれを試した –

+0

私はそれをテストし、それは私の最後にうまく動作します。パブリックディレクトリのindex.phpで試してみました。 – Nabeel

+0

Nopeはconfig関数が定義されていないことを伝えます。どのファイルをconfig()関数で見つけることができるかについてのアイデアは何ですか? –

0

は、なぜあなたは代わりにカスタムサービスプロバイダを使用していませんか?あなたはpublicディレクトリにPHPファイルであなたのLaravelのconfigを使用したい場合は、単にこのファイルを必要とhttps://laracasts.com/series/laravel-5-fundamentals/episodes/25