多言語判別 PHP

PHPでユーザー言語を取得し処理を振り分ける方法を下記に記載します。

<?php
 #-------------------------------------------------------------------------------------------------
 $UserLanguage = $_SERVER['HTTP_ACCEPT_LANGUAGE']; #ユーザー言語の取得
 #-------------------------------------------------------------------------------------------------
 if($_REQUEST["lang"]) {
  $lang = $_REQUEST["lang"]; #URL引数(名:lang)から言語を強制設定
 } else {
  if(isset($UserLanguage)) {
   if(ereg('ja', $UserLanguage)) {
    $lang = "ja"; #日本語
   } else if(ereg('en', $UserLanguage)) {
    $lang = "en"; #英語
   } else if(ereg('de', $UserLanguage)) {
    $lang = "de"; #ドイツ語
   } else if(ereg('fr', $UserLanguage)) {
    $lang = "fr"; #フランス語
   } else if(ereg('es', $UserLanguage)) {
    $lang = "es"; #スペイン語
   } else if(ereg('ru', $UserLanguage)) {
    $lang = "ru"; #ロシア語
   } else if(ereg('zh-cn', $UserLanguage)) {
    $lang = "zh-cn"; #中国語
   } else if(ereg('zh-tw', $UserLanguage)) {
    $lang = "zh-tw"; #繁体中国語
   } else if(ereg('zh-tw', $UserLanguage)) {
    $lang = "zh-tw"; #繁体中国語
   } else if(ereg('ko', $UserLanguage)) {
    $lang = "ko"; #韓国語
   } else {
    $lang = "ja"; #日本語
   }
  } else {
   $lang = "undefined"; #未定義
  }
 }
 ?>

URL引数(名:lang)から言語を強制的に設定することも可能です。

Sample

Download