한글 초성 추출하기
<?php
function utf8_strlen($str) { return mb_strlen($str, 'UTF-8'); }
function utf8_charAt($str, $num) { return mb_substr($str, $num, 1, 'UTF-8'); }
function utf8_ord($ch) {
$len = strlen($ch);
if($len <= 0) return false;
$h = ord($ch{0});
if ($h <= 0x7F) return $h;
if ($h < 0xC2) return false;
if ($h <= 0xDF && $len>1) return ($h & 0x1F) << 6 | (ord($ch{1}) & 0x3F);
if ($h <= 0xEF && $len>2) return ($h & 0x0F) << 12 | (ord($ch{1}) & 0x3F) << 6 | (ord($ch{2}) & 0x3F);
if ($h <= 0xF4 && $len>3) return ($h & 0x0F) << 18 | (ord($ch{1}) & 0x3F) << 12 | (ord($ch{2}) & 0x3F) << 6 | (ord($ch{3}) & 0x3F);
return false;
}
function cho_hangul($str) {
$cho = array("ㄱ","ㄲ","ㄴ","ㄷ","ㄸ","ㄹ","ㅁ","ㅂ","ㅃ","ㅅ","ㅆ","ㅇ","ㅈ","ㅉ","ㅊ","ㅋ","ㅌ","ㅍ","ㅎ");
$result = "";
for ($i=0; $i<utf8_strlen($str); $i++) {
$code = utf8_ord(utf8_charAt($str, $i)) - 44032;
if ($code > -1 && $code < 11172) {
$cho_idx = $code / 588;
$result .= $cho[$cho_idx];
}
}
return $result;
}
echo cho_hangul("안녕하세요");
댓글 10개
5년 전
오 감사합니다.
메리크리스마스
메리크리스마스
5년 전
와우 초성퀴즈 게시판 제작 누군가 하셔야것네
5년 전
감사합니다.
DawnDew
5년 전
와 팁 감사합니다
소니는사라졌다
5년 전
감사합니다.
5년 전
멋진 팁 감사합니다.
5년 전
새해 선물네요.
5년 전
감사합니다.
5년 전
좋은 팁 감사합니다.
3년 전
https://kandys.tistory.com/32
참조하세요.
참조하세요.
게시판 목록
개발자팁
개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5096 | PHP | 3년 전 | 1499 | ||
| 5095 | JavaScript | 3년 전 | 2127 | ||
| 5094 | JavaScript | 3년 전 | 2046 | ||
| 5093 | 기타 | 3년 전 | 1415 | ||
| 5092 | JavaScript | 3년 전 | 1962 | ||
| 5091 | 기타 |
|
3년 전 | 1321 | |
| 5090 | 기타 |
|
3년 전 | 2257 | |
| 5089 | 웹서버 |
|
3년 전 | 3330 | |
| 5088 | JavaScript | 3년 전 | 2060 | ||
| 5087 | 기타 | 3년 전 | 1661 | ||
| 5086 | 웹서버 |
|
3년 전 | 1702 | |
| 5085 | node.js | 3년 전 | 1646 | ||
| 5084 | JavaScript |
DogFoot개발
|
3년 전 | 1454 | |
| 5083 | 웹서버 |
DogFoot개발
|
3년 전 | 2989 | |
| 5082 | JavaScript |
DogFoot개발
|
3년 전 | 4027 | |
| 5081 | JavaScript |
DogFoot개발
|
3년 전 | 2100 | |
| 5080 | JavaScript |
DogFoot개발
|
3년 전 | 2439 | |
| 5079 | 기타 |
DogFoot개발
|
3년 전 | 2493 | |
| 5078 | OS | 3년 전 | 1650 | ||
| 5077 | 웹서버 |
DogFoot개발
|
3년 전 | 1723 | |
| 5076 | 기타 |
DogFoot개발
|
3년 전 | 1535 | |
| 5075 | 기타 |
DogFoot개발
|
3년 전 | 1677 | |
| 5074 | 기타 | 3년 전 | 2284 | ||
| 5073 | 기타 | 3년 전 | 2554 | ||
| 5072 | 웹서버 |
|
4년 전 | 2234 | |
| 5071 | 웹서버 | 4년 전 | 3236 | ||
| 5070 | PHP | 4년 전 | 3197 | ||
| 5069 | 웹서버 | 4년 전 | 2433 | ||
| 5068 | 기타 |
|
4년 전 | 3014 | |
| 5067 | 기타 |
DogFoot개발
|
4년 전 | 2684 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기