Php 如何计算以';分隔的单词数';一串

Php 如何计算以';分隔的单词数';一串,php,Php,我认为这是一个基本而简单的问题 $a = ""; $b = "red"; $c = "red,blue"; echo(count(explode(',',$a))); 1 echo(count(explode(',',$b))); 1 echo(count(explode(',',$c))); 2 我想计算一个字符串中有多少字符串以“,”分隔 不过,我认为第二行和第三行是可以的 我要第一行返回1; 有什么好办法吗? 谢谢尝试使用来计算字符串中有

我认为这是一个基本而简单的问题

    $a = "";
    $b = "red";
    $c = "red,blue";

    echo(count(explode(',',$a))); 1
    echo(count(explode(',',$b))); 1
    echo(count(explode(',',$c))); 2
我想计算一个字符串中有多少字符串以“,”分隔

不过,我认为第二行和第三行是可以的

我要第一行返回1; 有什么好办法吗? 谢谢

尝试使用来计算字符串中有多少个

例如:

$a = "";
$b = "xs";
$c = "xs,oi";

echo(substr_count($a, ',')); // 0
echo(substr_count($b, ',')); // 0
echo(substr_count($c, ',')); // 1
$a = "";
$b = "xs";
$c = "xs,oi";

$a_words = substr_count($a, ',') + (strlen($a) ? 1 : 0);
$b_words = substr_count($b, ',') + (strlen($b) ? 1 : 0);
$c_words = substr_count($c, ',') + (strlen($c) ? 1 : 0);

echo $a_words; // 0
echo $b_words; // 1
echo $c_words; // 2

要计算字数:

例如:

$a = "";
$b = "xs";
$c = "xs,oi";

echo(substr_count($a, ',')); // 0
echo(substr_count($b, ',')); // 0
echo(substr_count($c, ',')); // 1
$a = "";
$b = "xs";
$c = "xs,oi";

$a_words = substr_count($a, ',') + (strlen($a) ? 1 : 0);
$b_words = substr_count($b, ',') + (strlen($b) ? 1 : 0);
$c_words = substr_count($c, ',') + (strlen($c) ? 1 : 0);

echo $a_words; // 0
echo $b_words; // 1
echo $c_words; // 2
我们还可以创建一个函数来执行我们想要的操作:

function count_words($string, $deliminator = ",") {
    return substr_count($string, $deliminator) + (strlen($string) ? 1 : 0);
}

echo count_words($a); // 0
echo count_words($b); // 1
echo count_words($c); // 2
你可以用


只要检查一下它是否是空的。若有:零;;$a的可能副本不是空的,只是“”而已。这个代码肯定返回1,1,2echo substr_count($a,,')@谢谢,但那篇文章和我的问题不一样。我想数一数单词,而不是“,”。嗯,好的。我会更新的。抱歉,我没有完全理解。@whitebear我更新了我的答案,以完成计算由commaThanks删除的字符串中的字数,此示例解决了我的问题无问题,很高兴帮助您@whitebear