ホームページ > バックエンド開発 > PHPチュートリアル > PHP の `setlocale()` が月の名前をドイツ語に変更しないのはなぜですか?

PHP の `setlocale()` が月の名前をドイツ語に変更しないのはなぜですか?

Patricia Arquette
リリース: 2024-12-04 21:02:12
オリジナル
983 人が閲覧しました

Why Doesn't PHP's `setlocale()` Change Month Names to German?

PHP setlocale() は効果がない: ドイツ語で月の名前を表示するためのヒント

setlocale() 関数は、多くの場合、日付と時刻の表現を処理するための言語。ただし、月名をドイツ語で出力しようとする場合など、期待どおりの効果が得られない場合があります。

ドイツ語ロケールの設定

PHP では、 LC_ALL を使用してすべてのデータ型のロケールを設定できます:

setlocale(LC_ALL, 'de_DE.utf8');
ログイン後にコピー

ここでは、「de_DE.utf8」 UTF-8 エンコードを使用してドイツ語ロケールを指定します。ただし、サーバーで動作するロケール設定を見つけるには、「de_DE」、「de」、「ge」などのさまざまなロケール設定を試す必要がある場合があります。

インストールされているロケールの確認

setlocale() でドイツ語ロケールが設定されない場合は、サーバーにドイツ語ロケールがインストールされていない可能性があります。シェル アクセス権がある場合は、「locale -a」コマンドを使用して、インストールされているロケールを確認できます。

代替アプローチ

シェル アクセスが利用できず、インストールされているロケールに必要なロケールがない場合言語については、別のアプローチを検討してください:

  • カスタム翻訳配列: 作成月名の配列を取得し、直接アクセスします。
$month_names = [
    1 => 'Januar',
    2 => 'Februar',
    3 => 'März'
];

echo $month_names[date('m')];
ログイン後にコピー
  • 外部ライブラリ: ロケール処理をサポートし、さまざまなサーバーでロケールを利用できるようにする外部ライブラリを使用します。

以上がPHP の `setlocale()` が月の名前をドイツ語に変更しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート