正确的方法是让strlen返回几个字符串放在一起的长度。
例如,如果一个字符串是hello而另一个字符串是jim,则它应该返回:8.(hello = 5 jim = 3)
我需要得到$ array [0] $ array [1] $ array [2] $ array [3]和$ array [4]
的组合长度由于
答案 0 :(得分:7)
之前使用implode:
echo strlen(implode($array));
如果您不想要整个阵列,也可以将它与array_slice结合使用:
echo strlen(implode(array_slice($array, 0, 4)));
答案 1 :(得分:3)
array_sum(array_map("strlen", $array_of_strings))
答案 2 :(得分:2)
$len = 0;
foreach($array as $str)
$len += strlen($str);
答案 3 :(得分:1)
使用类似的东西:
$string = '';
foreach ($array as $val) {
$string .= $val;
}
echo strlen($string);
这将避免多次strlen
次调用,因此,应该比在strlen
循环中调用foreach
要快一点,至少理论上是这样。
答案 4 :(得分:-1)
您可以使用implode()在单个字符串中转换字符串数组,然后对结果进行strlen。
echo strlen(implode('', $array))
答案 5 :(得分:-1)
如果要获取数组中所有字符串的总长度,可以执行以下操作:
$len = strlen(implode('',$myArray));
*请注意,此代码将连接字符串,它们之间没有空格。如果您希望这个参数不同,可以将第一个参数更改为implode()
。