我有分隔的數值只是一個像這樣的字符串:如何截斷PHP中的分隔字符串?
5|2288|502|4208|55|23217|235|10|3845|19053|1885|61|324|9004| ...etc.
根據不同的情況下,該字符串可能只有1個值,15個值,最多值100秒一路,分隔的所有管道。
我需要計數(並保留/回顯)前10個值,然後截斷其他所有內容。
我一直在尋找所有的PHP字符串函數,但一直沒有找到一個方法直接處理這個問題。
我有分隔的數值只是一個像這樣的字符串:如何截斷PHP中的分隔字符串?
5|2288|502|4208|55|23217|235|10|3845|19053|1885|61|324|9004| ...etc.
根據不同的情況下,該字符串可能只有1個值,15個值,最多值100秒一路,分隔的所有管道。
我需要計數(並保留/回顯)前10個值,然後截斷其他所有內容。
我一直在尋找所有的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);
這是完美的!謝謝。正是我在找什麼。很顯然,我在錯誤的地方尋找解決方案...... – 2015-03-19 04:34:39
使用PHP爆炸功能
$arr = explode("|",$str);
這將打破整個字符串到一個數組。 EG: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;
可以使用爆炸功能和使用foreach循環打印值高達10 – 2015-03-19 04:19:04