我有一个由分隔的数值组成的字符串,如下所示:
5|2288|502|4208|55|23217|235|10|3845|19053|1885|61|324|9004| ...etc.
根据具体情况,字符串可能只有1个值,15个值,一直到100个值,都是管道分隔的。
我需要对前10个值进行计数(并保留/echo),然后截断其他所有值。
我一直在研究所有的PHP字符串函数,但一直未能找到直接处理它的方法。
使用explode()
将元素分隔成一个数组,然后可以将前10个元素切片,并使用implode()
创建新字符串。
$arr = "5|2288|502|4208|55|23217|235|10|3845|19053|1885|61|324|9004";
$a = explode ('|',$arr);
$b = array_slice($a,0,10);
$c = implode('|', $b);
使用PHP分解函数
$arr = explode("|",$str);
它将把整个字符串分解成一个数组。例如:arr[0]=5,arr[1]=2288。。。。。
我会使用爆炸将字符串分隔成一个数组,然后像这个一样回显前十个结果
$string = "5|2288|502|4208|55|23217|235|10|3845|19053|1885|61|324|9004";
$arr = explode("|", $string);
for($i = 0; $i < 10; $i++){
echo $arr[$i];
}
请尝试以下代码
$str = '5|2288|502|4208|55|23217|235|10|3845|19053|1885|61|324';
$arrayString = explode('|', $str);
$cnt = 0;
$finalVar = '';
foreach ($arrayString as $data) {
if ($cnt > 10) {
break;
}
$finalVar .= $data . '|';
$cnt++;
}
$finalVar = rtrim($finalVar, '|');
echo $finalVar;