Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP mb_encoding_aliases() 함수 – 알려진 인코딩 타입의 별칭(Alias) 목록 가져오기

PHP에서 mb_encoding_aliases() 함수는 알려진(등록된) 인코딩 타입에 대한 별칭(alias) 목록을 가져올 때 사용됩니다. 이 함수는 PHP 5 이상 버전부터 지원되며, 멀티바이트 문자열 확장(mbstring)이 활성화되어 있어야 정상적으로 동작합니다.

문법(Syntax)

array mb_encoding_aliases(str $encoding)

매개변수(Parameters)

이 함수는 단 하나의 매개변수만 받습니다.

  • $encoding : 별칭을 확인하려는 인코딩 타입입니다.

반환값(Return Values)

성공하면 해당 인코딩의 별칭들이 담긴 숫자 인덱스 배열을 반환하고, 실패하면 False를 반환합니다.

오류 및 예외(Errors/Exceptions)

존재하지 않거나 알려지지 않은 인코딩을 전달하면 E_WARNING 수준의 경고 오류가 발생합니다. 따라서 호출 전에 mb_list_encodings()로 유효한 인코딩인지 먼저 검사하는 것이 안전합니다.

예제 1 – ASCII 인코딩의 별칭 조회하기

<?php
   $encoding = 'ASCII';
   $known_encodings = mb_list_encodings();

   if (in_array($encoding, $known_encodings))
   {
      $aliases = mb_encoding_aliases($encoding);
      print_r($aliases);
   }
   else
   {
      echo "Unknown ($encoding) encoding.\n";
   }
?>

출력 결과

Array
(
   [0] => ANSI_X3.4-1968
   [1] => iso-ir-6
   [2] => ANSI_X3.4-1986
   [3] => ISO_646.irv:1991
   [4] => US-ASCII
   [5] => ISO646-US
   [6] => us
   [7] => IBM367
   [8] => IBM-367
   [9] => cp367
   [10] => csASCII
)

위 예제에서는 먼저 mb_list_encodings()로 지원되는 인코딩 목록을 가져온 뒤, 'ASCII'가 포함되어 있는지 확인하고 별칭 배열을 출력합니다. 'ASCII' 인코딩에는 총 11개의 별칭이 등록되어 있는 것을 확인할 수 있습니다.

예제 2 – var_dump()로 반환값 자세히 살펴보기

<?php
   $array = mb_encoding_aliases("ASCII");
   var_dump($array);
?>

출력 결과

array(11) {
   [0]=>
   string(14) "ANSI_X3.4-1968"
   [1]=>
   string(8) "iso-ir-6"
   [2]=>
   string(14) "ANSI_X3.4-1986"
   [3]=>
   string(16) "ISO_646.irv:1991"
   [4]=>
   string(8) "US-ASCII"
   [5]=>
   string(9) "ISO646-US"
   [6]=>
   string(2) "us"
   [7]=>
   string(6) "IBM367"
   [8]=>
   string(7) "IBM-367"
   [9]=>
   string(5) "cp367"
   [10]=>
   string(7) "csASCII"
}

var_dump()를 사용하면 각 별칭이 문자열(string) 타입으로 저장된 것과 그 길이까지 상세하게 확인할 수 있습니다. 이처럼 mb_encoding_aliases()는 동일한 문자 인코딩을 여러 이름으로 참조할 수 있게 해주는 별칭 정보를 손쉽게 조회할 수 있는 유용한 함수입니다.