PHP Multi-Byte String 처리 기능에서 MB_Convert_kana는 주로 전체 및 반 더스의 전환, Kana의 Hiragana 비즈니스 카티 카타나의 변환과 같은 일본 문자의 다양한 변환에 주로 사용되는 매우 실용적인 기능입니다. 사용 양식은 다음과 같습니다.
string mb_convert_kana(string $string, string $mode = "KV", ?string $encoding = null)
여기서 $ 모드 매개 변수는 변환 방법을 지정하는 데 사용되는 다중 플래그 문자의 조합입니다. 사람들은 종종 $ 모드 에서 여러 플래그의 순서가 다른지 궁금해합니다. 변환 결과가 다를까요? 이 기사는 특정 사례에 따라이 문제를 자세히 분석합니다.
일반적으로 사용되는 몇 가지 로고 문자 및 의미를 간단히 나열하겠습니다.
K : 전체 너비 카타 카나를 반 폭 스카 타나로 변환하십시오
V : 음성과 반음 기호를 반 넓은 카타 카나로 복원하여 완전한 음성 가명으로 복원
H : 전형 영어 번호를 반 넓은 영어 번호로 변환
A : 전폭 영숫자와 기호를 반 넓이로 변환합니다
R : 반 넓은 영어 번호를 전체 너비 영어 번호로 변환
S : 전폭 공간을 반 폭 공간으로 변환합니다
이 플래그는 "KV"와 같은 조합으로 사용할 수 있습니다. "KV"는 k 작동이 먼저 수행 된 다음 V 작동을 수행 함을 의미합니다.
$ 모드 플래그를 다룰 때는 주문이 실제로 매우 중요합니다. 각 플래그는 독립적 인 변환 단계를 나타 내기 때문에 변환은 순차적으로 수행됩니다. 하나의 변환을 먼저하고 다른 변환을 수행하면 결과는 종종 역 순서에서 다른 것과 다릅니다.
예를 들어:
$input = "カタカナ"; // 전체 너비 카타 카나
// 주문하다1:첫 번째K뒤쪽에V
$output1 = mb_convert_kana($input, "KV");
// 주문하다2:첫 번째V뒤쪽에K
$output2 = mb_convert_kana($input, "VK");
echo "주문하다KV결과: $output1\n";
echo "주문하다VK결과: $output2\n";
"KV" 의 순서는 전체 폭스 카타 타나를 반 폭의 카타 타나 (k)로 변환 한 다음 음성 기호를 반 넓은 카타 카나로 변환하는 것입니다.
"VK"는 먼저 반 넓은 카타 카나 (V)에서 음성 기호를 복원하려고 시도하지만, 현재 캐릭터는 여전히 전체 너비 카타 카나이기 때문에 V 변환은 작동하지 않습니다. 그런 다음 k 변환은 전체 폭스 katakana를 반 넓이로 변환하고 최종 결과는 "kv"와 다릅니다.
입력 문자열에 Voiced 표기법이있는 반 폭 카타 카나가 포함되어 있다고 가정합니다.
$input = "??"; // 반 폭 카타 카나“ガ”카타 카나로 나뉩니다+음성 마크
// 按주문하다使用不同模式
$output1 = mb_convert_kana($input, "KV"); // 첫 번째K뒤쪽에V
$output2 = mb_convert_kana($input, "VK"); // 첫 번째V뒤쪽에K
echo "입력하다: $input\n";
echo "KV模式转换뒤쪽에: $output1\n";
echo "VK模式转换뒤쪽에: $output2\n";
"kv"를 사용하여 K는 먼저 전체 모서리를 모서리의 절반으로 돌립니다 (여기에는 이미 절반 코너가 있고 K는 기본적으로 영향을 미치지 않습니다). 그런 다음 V는 카타 카나 반도와 음성 기호를 완전한 카나 "GE"로 복원합니다.
"vk"를 사용하여 v는 먼저 음성 기호를 복원하려고 시도한 다음 (성공적으로) K는 변환을 수행합니다 (여기서는 전체 너비가 절반 코너로 바뀌지 만 현재는 전체 폭으로 바뀌어 반쪽의 모퉁이로 변환).
MB_CONVERTT_KANA 의 $ 모드 매개 변수의 플래그 순서는 변환 프로세스의 연속 단계에 직접 영향을 미칩니다.
주문하면 문자 상태가 다른 변화를 일으켜 최종 출력 결과에 영향을 미칩니다.
각 플래그의 의미와 전환 순서를 올바르게 이해함으로써 전환 효과가 기대치와 일치하도록 할 수 있습니다.
"KV" 와 같은 일반적인 조합은 먼저 전체 폭스 카타 카나를 반 폭으로 변환 한 다음 논리적이고 공통 순서 인 음성 기호를 복원합니다.
자세한 내용은 공식 PHP 매뉴얼의 MB_CONVERT_KANA 기능 문서 를 참조하십시오.