如何在PHP中第n次出现针时拆分字符串?
必须有一种快速有效的方法在针的“n”次出现时拆分(文本)字符串,但我找不到它。PHP手册中的strpos注释中有一组相当完整的函数,但对于我需要的来说,这似乎有点多。
我有纯文本,并希望在第n次出现时拆分它,在我的情况下,只是一个空格。(我可以做健全性检查!$string
$needle
needle
我该怎么做?
必须有一种快速有效的方法在针的“n”次出现时拆分(文本)字符串,但我找不到它。PHP手册中的strpos注释中有一组相当完整的函数,但对于我需要的来说,这似乎有点多。
我有纯文本,并希望在第n次出现时拆分它,在我的情况下,只是一个空格。(我可以做健全性检查!$string
$needle
needle
我该怎么做?
它可能是:
function split2($string, $needle, $nth) {
$max = strlen($string);
$n = 0;
for ($i=0; $i<$max; $i++) {
if ($string[$i] == $needle) {
$n++;
if ($n >= $nth) {
break;
}
}
}
$arr[] = substr($string, 0, $i);
$arr[] = substr($string, $i+1, $max);
return $arr;
}
就我个人而言,我只是将它分成一个带有爆炸的数组,然后将前半部分内爆,并将剩余的数字内爆为后半部分。n-1