PHP文字列の各文字の出現回数を6つの方法で計算
8440 ワード
$str = 'AbCdEfGaBcDeFgH0234;,!-AaBbCcDdEeFfGg';
$str = strtoupper($str); // ,
//
$res = array(); //
$arr = str_split($str); //
$res = array_count_values($arr); //
var_dump($res);
//
$res = array(); //
$arr = str_split($str); //
foreach ($arr as $key => $val) { //
if (!isset($res[$val])) { // key
$res[$val] = 1; // 1
} else {
$res[$val] += 1; // 1
}
}
var_dump($res);
//
$res = array(); //
$arr = str_split($str); //
$unique = array_unique($arr); //
foreach ($unique as $key => $val) {
$res[$val] = substr_count($str, $val); //
}
var_dump($res);
// ASCII
$res = array(); //
$arr = str_split($str); //
foreach ($arr as $key => $val) {
$ascii = ord($val);
if (!isset($res[$ascii])) {
$res[$ascii] = 1;
} else {
$res[$ascii] += 1;
}
}
foreach ($res as $key => $val) {
$res[chr($key)] = $val;
unset($res[$key]);
}
var_dump($res);
/**
* PHP :
* $str = 'AaBbCcDdEeFfGg';
* $str[0] A $str[2] B
* ,
*/
//
$res = array(); //
$strLen = strlen($str); //
for ($i = 0; $i < $strLen; $i++) { //
if (!isset($res[$i])) { // key
$res[$i] = 1; // 1
} else {
$res[$i] += 1; // 1
}
}
var_dump($res);
//
$res = array(); //
$strLen = strlen($str); //
for ($i = 0; $i < $strLen; $i++) { // for
$ascii = ord($str[$i]); // ASCII
if (!isset($res[$ascii])) {
$res[$ascii] = 1;
} else {
$res[$ascii] += 1;
}
}
foreach ($res as $key => $val) { //
$res[chr($key)] = $val; // ASCII
unset($res[$key]); // ASCII key
}
var_dump($res);