質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.34%

  • PHP

    21410questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Laravel 5

    2098questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

laravel envファイルに日本語を記入

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 408

n.Taro

score 8

環境設定ファイルの.envに日本語を記入する方法がわかりません。

APP_NAMEのところにシステム名として、下記のように日本語で記載したのですが
bladeで取得しても表示されませんでした。
そもそも日本語は設定できないのでしょうか?

APP_NAME="システム名"
//app.blade.phpから抜粋
<title>{{ config('app.name') }}</title>

laravleのバージョンは5.5です

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+1

同様の事象を確認しました。(環境 Windows10)
※もしかしたらmac等では動作が異なるかもしれません。

.envの内容を環境変数にセットする動作については、
phpdotenvsetEnvironmentVariableで定義されているようです。

ここで、.envに適当な日本語をセットすると$_ENV[$name]及び$_SERVER[$name]には
意図した設定が入りますが、実際にgetenv(APP_NAME)とすると、日本語が化けるまたは、
falseが返ってきてしまうようです。
結論として、どうやらgetenv()は日本語の環境変数をサポートしきれていない様な気がします。

質問者さんにとって、最も簡単な解決策としては.envAPP_NAMEを削除して、
config.phpのデフォルト値に委ねてしまうことかもしれませんね。

'name' => '日本語で設定したい内容',

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/07/31 15:41

    貴重なご意見ありがとうございます。
    仕様で無理であれば別の方法を考えます。

    たんに、開発環境と本番環境でタイトルを変えていれば、わかりやすくenvで設定できると楽だったので日本語が使えれればと思っていたところです。
    APP_ENVを使って条件分岐で対応します。
    ありがとうございました

    キャンセル

0

//app.blade.phpから抜粋
<title>{{ config('app.name') }}</title>

.envより値を取る場合は

{{ env('APP_NAME') }}

となります。

config/app.phpには

    'name' => env('APP_NAME', 'Laravel'),


と(デフォルトでは)記述されていて、
Laravelの初期状態でconfig('app.name')で.envの値が取れるのは

  1. config('app.name')でapp.phpのnameキーの値を取得しようとする。
  2. 取得先のapp.phpのnameキーに対応する値はenv('APP_NAME')なので、
    env('APP_NAME')を呼び出し.envのAPP_NAMEの値を取得

となるためです。

ご質問の中でapp.phpに関しての情報が無いのでこれが断言はできないのですが、
app.phpの

    'name' => env('APP_NAME', 'Laravel'),


を書き換えていたりしていますでしょうか?
(私の環境では日本語表示できたので、日本語がNGという訳では無いようです)

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/07/30 17:18

    誤解を生む表現で申し訳ありません。
    config/app.phpの件は承知しています。

    ちなみに
    'name' => env('APP_NAME', '日本語のシステム名称'),
    のように記載していますが
    表示されません

    仕様として日本語がだめなら諦めたのですが、使用可能ということであれば、ソースに誤りがあるのかもしれないです

    キャンセル

  • 2018/07/30 18:37

    >誤解を生む表現で申し訳ありません。
    >config/app.phpの件は承知しています。
    >
    >'name' => env('APP_NAME', '日本語のシステム名称'),
    >のように記載していますが
    >表示されません
    なるほど。。。

    ・アルファベットを適当に入れてみると表示できる
    ・文字コードや改行コードも問題がない
    こともおそらく確認されてますよね。。。

    キャンセル

  • 2018/07/31 15:38

    おっしゃるとおり、基本的なことは試しています。
    日本語のみ表示されないので困ってました

    キャンセル

同じタグがついた質問を見る

  • PHP

    21410questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Laravel 5

    2098questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。