How to count the frequency of the digits (0 to 9) in a string with PHP

1 Answer

0 votes
function countDigits($s) {
    $size = strlen($s);
    
    if ($size == 0) {
        echo "String is empry";
        return;
    }
    
    $digit_frequency = array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
    
    for ($i = 0; $i < $size; $i++) {
        if (ctype_digit($s[$i])) {
            $digit_frequency[ord($s[$i]) - ord('0')]++;
        }
    }
    
    for ($j = 0; $j < 10; $j++) {
        echo $j . ": " . $digit_frequency[$j] . " times\n";
    }
}

$s = "php23c++4523java23988rust82215";
countDigits($s);



 
/*
run:
 
0: 0 times
1: 1 times
2: 5 times
3: 3 times
4: 1 times
5: 2 times
6: 0 times
7: 0 times
8: 3 times
9: 1 times
 
*/

 



answered Jun 2, 2023 by avibootz
...