在不使用可用函数的情况下,计算PHP中字符串中出现的字符数
对不起,如果这个问题已经存在。 我有个问题,你能帮我吗。 只能使用在不使用可用函数的情况下,计算PHP中字符串中出现的字符数,php,arrays,string,Php,Arrays,String,对不起,如果这个问题已经存在。 我有个问题,你能帮我吗。 只能使用strlen函数和数组。可以使用PHP(字符不重复)对字符串中出现的字符数进行编程计数吗。类似于在php中创建新的array\u count\u values函数。 例如: 这是我在使用可用函数array\u count\u values时的代码,它可以正常工作 $a = str_split($str, 1); foreach (array_count_values($a) as $key => $value) {
strlen
函数和数组。可以使用PHP(字符不重复)对字符串中出现的字符数进行编程计数吗。类似于在php中创建新的array\u count\u values
函数。
例如:
这是我在使用可用函数array\u count\u values
时的代码,它可以正常工作
$a = str_split($str, 1);
foreach (array_count_values($a) as $key => $value) {
if ($key === ' ') {
$key = '_';
}
echo $key.'appeared '.$value.' times<br>';
}
$a=str\u split($str,1);
foreach(数组计数值($a)为$key=>$value){
如果($key==''){
$key=''";
}
回显$key.'.$value.'times
';
}
感谢阅读。这是一种方法。我相信还有更简洁的方法
$input = 'lorem lis pum';
for( $i = 0, $ilen = strlen( $input ), $result = array(); $i < $ilen; $i++ ) {
$chr = $input[ $i ];
// substituting the space with an underscore is not actually necessary
if( $chr === ' ' ) {
$chr = '_';
}
$result[ $chr ] = isset( $result[ $chr ] ) ? $result[ $chr ] + 1 : 1;
}
var_dump( $result );
$input='lorem lis pum';
对于($i=0,$ilen=strlen($input),$result=array();$i<$ilen;$i++){
$chr=$input[$i];
//实际上不需要用下划线替换空格
如果($chr==''){
$chr='u';
}
$result[$chr]=isset($result[$chr])?$result[$chr]+1:1;
}
var_dump($结果);
你可以。这是一种方法。我相信还有更简洁的方法
$input = 'lorem lis pum';
for( $i = 0, $ilen = strlen( $input ), $result = array(); $i < $ilen; $i++ ) {
$chr = $input[ $i ];
// substituting the space with an underscore is not actually necessary
if( $chr === ' ' ) {
$chr = '_';
}
$result[ $chr ] = isset( $result[ $chr ] ) ? $result[ $chr ] + 1 : 1;
}
var_dump( $result );
$input='lorem lis pum';
对于($i=0,$ilen=strlen($input),$result=array();$i<$ilen;$i++){
$chr=$input[$i];
//实际上不需要用下划线替换空格
如果($chr==''){
$chr='u';
}
$result[$chr]=isset($result[$chr])?$result[$chr]+1:1;
}
var_dump($结果);
你可以。你可以试试这个,希望对你有所帮助:)
或简单版本:
<?php
$input = 'lorem lis pum';
function outputs($input)
{
//suggest remove all spaces first
$input = str_replace(' ', '', $input);
$chars = str_split($input);
foreach (array_count_values($chars) as $key => $value)
{
echo $key. ' appeared '.$value.' times<br>';
}
}
outputs($input);
?>
您可以试试这个,希望对您有所帮助:)
或简单版本:
<?php
$input = 'lorem lis pum';
function outputs($input)
{
//suggest remove all spaces first
$input = str_replace(' ', '', $input);
$chars = str_split($input);
foreach (array_count_values($chars) as $key => $value)
{
echo $key. ' appeared '.$value.' times<br>';
}
}
outputs($input);
?>
尝试使用该功能
foreach(将字符($str,1)计数为$key=>$value){
echo chr($key)。“出现”。$value。“次
”;
}
尝试使用该功能
foreach(将字符($str,1)计数为$key=>$value){
echo chr($key)。“出现”。$value。“次
”;
}
我很好奇为什么你需要创建一个已经存在的范例?您是否还想实现另一种方法?为此,你需要为此创建一种新方法?@hassan我想了解更多信息。也许我将来会发明一种新方法我很好奇为什么你需要创造一个已经存在的范例?您是否还想实现另一种方法?为此,你需要为此创建一种新方法?@hassan我想了解更多信息。也许我将来会发明一种新方法谢谢@Timur,但我不想使用可用函数。谢谢@Timur,但我不想使用可用函数。
foreach (count_chars($str, 1) as $key => $value) {
echo chr($key).' appeared '.$value.' times<br>';
}