라이브러리
[PHP] grapheme_strlen - 문자소 단위로 문자열 길이를 가져옵니다.
Grapheme_strlen() 함수란?
PHP 7.4 버전부터 제공되는 `grapheme_strlen()` 함수는 문자열의 글리프 길이를 반환합니다. 글리프는 한글의 한 글자에 해당하는 단위로, 한글은 2글리프로 구성되어 있습니다.
기존의 strlen() 함수와의 차이점
`strlen()` 함수는 문자열의 바이트 길이를 반환합니다. 예를 들어, 한글은 2바이트로 구성되어 있기 때문에 `strlen()` 함수로 한글의 길이를 계산하면 2로 나옵니다. 하지만 `grapheme_strlen()` 함수는 글리프 길이를 반환하므로, 한글의 길이를 정확하게 계산할 수 있습니다.
예제
#hostingforum.kr
php
// strlen() 함수로 한글의 길이를 계산
$text = "안녕하세요";
echo "strlen(): " . strlen($text) . "
"; // 6
// grapheme_strlen() 함수로 한글의 길이를 계산
echo "grapheme_strlen(): " . grapheme_strlen($text) . "
"; // 5
위 예제에서 `strlen()` 함수로 한글의 길이를 계산한 결과는 6이지만, `grapheme_strlen()` 함수로 한글의 길이를 계산한 결과는 5입니다. 이는 한글이 2글리프로 구성되어 있기 때문입니다.
글리프 길이와 바이트 길이의 차이
#hostingforum.kr
php
// 한글의 바이트 길이
$text = "안녕하세요";
echo "바이트 길이: " . strlen($text) . "
"; // 6
// 한글의 글리프 길이
echo "글리프 길이: " . grapheme_strlen($text) . "
"; // 5
위 예제에서 한글의 바이트 길이는 6이지만, 한글의 글리프 길이는 5입니다. 이는 한글이 2바이트로 구성되어 있기 때문입니다.
글리프 길이와 문자열의 길이의 차이
#hostingforum.kr
php
// 한글의 글리프 길이와 문자열의 길이
$text = "안녕하세요";
echo "글리프 길이: " . grapheme_strlen($text) . "
"; // 5
echo "문자열의 길이: " . strlen($text) . "
"; // 6
위 예제에서 한글의 글리프 길이는 5이지만, 문자열의 길이는 6입니다. 이는 한글이 2바이트로 구성되어 있기 때문입니다.
결론
`grapheme_strlen()` 함수는 문자열의 글리프 길이를 반환하며, 한글의 길이를 정확하게 계산할 수 있습니다. 기존의 `strlen()` 함수는 문자열의 바이트 길이를 반환하므로, 한글의 길이를 계산할 때는 `grapheme_strlen()` 함수를 사용하는 것이 좋습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.