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

PHP count_chars() 함수 사용법 – 문자열 내 문자 정보 확인하기

PHP의 count_chars() 함수는 문자열에 포함된 각 문자에 대한 정보를 반환하는 함수입니다. 이 함수를 활용하면 특정 문자열에서 어떤 ASCII 문자가 몇 번 사용되었는지, 또는 반대로 사용되지 않은 문자는 무엇인지 쉽게 파악할 수 있습니다.

문법

count_chars(string $string, int $mode = 0)

매개변수

  • str − 검사할 대상 문자열입니다.

  • mode − 반환 형식을 지정하는 매개변수로, 기본값은 0입니다.

mode 매개변수의 반환 형식

  • 0 − 키는 ASCII 값, 값은 해당 문자의 출현 횟수를 담은 배열을 반환합니다. (출현 횟수가 0인 문자도 포함)

  • 1 − 키는 ASCII 값, 값은 출현 횟수를 담은 배열을 반환하되, 출현 횟수가 0보다 큰 문자만 나열합니다.

  • 2 − 키는 ASCII 값, 값은 출현 횟수를 담은 배열을 반환하되, 출현 횟수가 정확히 0인 문자만 나열합니다.

  • 3 − 문자열에서 실제로 사용된 모든 서로 다른 문자들을 하나의 문자열로 반환합니다.

  • 4 − 문자열에서 사용되지 않은 모든 문자들을 하나의 문자열로 반환합니다.

반환값

count_chars() 함수는 지정된 mode 매개변수에 따라 배열 또는 문자열 형태로 결과를 반환합니다.

예제 1: mode = 1 (사용된 문자와 출현 횟수)

<?php
$s = "Weclome!";
print_r(count_chars($s, 1));
?>

출력

Array
(
    [33] => 1
    [87] => 1
    [99] => 1
    [101] => 2
    [108] => 1
    [109] => 1
    [111] => 1
)

위 출력 결과를 해석해 보면, ASCII 코드 33은 느낌표(!), 87은 대문자 W, 99는 소문자 c, 101은 소문자 e(2회 출현), 108은 소문자 l, 109는 소문자 m, 111은 소문자 o를 의미합니다. 즉, 문자열 "Weclome!"에서 각 문자가 몇 번 등장했는지 한눈에 확인할 수 있습니다.

예제 2: mode = 3 (사용된 모든 문자 나열)

<?php
$s = "Welcome!";
echo count_chars($s, 3);
?>

출력

!Wcelmo

이 예제에서는 mode 값을 3으로 설정하여, 문자열 "Welcome!"에 실제로 사용된 서로 다른 문자들이 중복 없이 하나의 문자열로 출력됩니다. ASCII 순서대로 정렬되어 느낌표(!)가 가장 먼저 표시되는 점을 확인할 수 있습니다.

정리

count_chars() 함수는 문자열 분석, 입력 데이터 검증, 중복 문자 제거 등 다양한 상황에서 유용하게 활용할 수 있습니다. 특히 mode 옵션을 적절히 조합하면 사용된 문자와 사용되지 않은 문자를 모두 손쉽게 처리할 수 있다는 점이 큰 장점입니다.