53092
お世話になります。

PHPでsetlocaleを使わずに、ロケールの指定をしたいのですが、php.ini等でできるのでしょうか。  
ちなみに、.htaccessに

```

    SetEnv LANG "ja_JP.UTF-8"
    
```

と記載してみましたが、反映されていないようです。  
何か良い方法があれば、教えていただけると幸いです。

以上、よろしくお願いいたします。
CC BY-SA 4.0
2019-02-28T06:01:53.820
53088
2019-02-28T07:37:10.027
29034
question
php
PHPのデフォルトのロケールを設定する方法
出来るようです。

[PHP7.2をインストール後のphp.iniの設定](https://qiita.com/nao_tuboyaki/items/9615166e2374a565af80)

> PHPをインストール後に最低限デフォルト値から変更する項目を書いておく  
>  ※書いてある項目以外にもあるとは思います。  
>  対象バージョン  
>  PHP 7.2  
>  php.ini設定
```

>     ; デフォルト文字コード
>     default_charset = UTF-8
>     ;　mbstringのデフォルトの言語
>     mbstring.language = Japanese
>     ;　HTTP入力文字のエンコーディングを内部文字のエンコーディングに自動変換なし
>     mbstring.encoding_translation = Off
>     ;　文字コードを自動検出する際の優先順位
>     mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
>     ; タイムゾーンを日本標準時間
>     date.timezone = Asia/Tokyo
>     ; HTTPのレスポンスによりPHPのバージョン情報を非表示
>     expose_php = Off
>  
>     ; 以下はPHP5.6以降で非推奨になっているのでコメントアウトしておく
>     ;mbstring.internal_encoding =
>     ;mbstring.http_input =
>     ;mbstring.http_output =
>  
```

ちなみに、Apacheによる設定は、.htaccess ではなく、以下でやるようです。  
[CentOSでApacheを日本語ロケール(ja_JP.utf8)で起動する](http://maeda.farend.ne.jp/blog/2010/01/05/apache-
httpd-lang/)

> ApacheをRHEL/CentOSのパッケージで導入した場合(デフォルト)  
>  ja_JP.utf8に設定するには、 /etc/sysconfig/httpd に以下の行を追加します。
```

    HTTPD_LANG=ja_JP.utf8
    
```

> Apacheをソースコードからビルドしてインストールした場合  
>  /usr/local/apache2/bin/envvars に以下の行を追加します。このファイルは apachectl 実行時に読み込まれます。
```

    LANG=ja_JP.utf8
    export LANG
    
```

類似の注意  
[PHP動作環境で先頭の漢字のみ文字化けするケースがある](http://www.cross-
ring.net/web/DPOW/linux_server_setting/apache/616)

> ちなみに、httpd.confに「SetEnv LANG ～」と書くことによる変更はできないようです。
CC BY-SA 4.0
2019-02-28T07:37:10.027
53092
2019-02-28T07:37:10.027
26370
53088
answer