PHP의 IntlChar::isMirrored() 함수는 입력된 값이 유니코드의 Bidi_Mirrored(양방향 미러링) 속성을 가지고 있는지 여부를 확인하는 데 사용됩니다. 이 속성은 RTL(오른쪽에서 왼쪽) 텍스트 환경에서 문자가 좌우로 뒤집혀 표시되어야 하는지를 나타내는 중요한 지표입니다.
문법
bool IntlChar::isMirrored ( mixed $val )
매개변수
val − 검사할 값으로, 정수(int) 또는 UTF-8로 인코딩된 문자열 형태의 단일 문자를 전달합니다.
반환값
입력된 값이 Bidi_Mirrored 속성을 가지고 있으면 true(TRUE)를 반환하고, 그렇지 않으면 false(FALSE)를 반환합니다.
예제
다음은 IntlChar::isMirrored() 함수의 사용 예제입니다.
<?php
var_dump(IntlChar::isMirrored("<"));
echo "<br>";
var_dump(IntlChar::isMirrored(">"));
echo "<br>";
var_dump(IntlChar::isMirrored("p"));
echo "<br>";
var_dump(IntlChar::isMirrored("*"));
echo "<br>";
?>실행 결과
위 예제를 실행하면 다음과 같은 결과가 출력됩니다.
bool(true) bool(true) bool(false) bool(false)
결과 해석
부등호 기호인 <와 >는 양방향 텍스트 처리 시 서로 반대 방향으로 뒤집혀야 하는 대칭 문자이므로 true를 반환합니다. 반면 일반 알파벳인 p나 특수 기호인 *는 미러링 속성을 갖지 않기 때문에 false가 출력됩니다.
활용 팁
이 함수는 다국어 웹 애플리케이션에서 아랍어나 히브리어처럼 오른쪽에서 왼쪽으로 읽는(RTL) 언어를 처리할 때 특히 유용합니다. 문자의 미러링 속성을 사전에 파악하면 텍스트 렌더링 로직을 더욱 정교하게 구현할 수 있습니다. 참고로 이 함수는 PHP의 intl 확장 모듈(Internationalization extension)이 활성화되어 있어야 정상적으로 동작합니다.