strlen两个或更多字符串?

时间:2011-01-04 20:21:05

标签: php

正确的方法是让strlen返回几个字符串放在一起的长度。

例如,如果一个字符串是hello而另一个字符串是jim,则它应该返回:8.(hello = 5 jim = 3)

我需要得到$ array [0] $ array [1] $ array [2] $ array [3]和$ array [4]

的组合长度

由于

6 个答案:

答案 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()