在php中有一個標準函數可以返回多字節符號之一的第一個出現位置嗎?php函數查找多字節字符之一的位置
整個任務如下。我有多字節字符串和位置在這個字符串,我需要找到其中一個符號(分隔符)的第一次出現。我寫了下面的函數,但不幸的是它工作得很慢。
$delimiters = array(
"\r", "\n", "\t", ".", ";", "!", "?"
);
function get_cit_end($str, $end) {
global $delimiters;
if($end >= mb_strlen($str))
return mb_strlen($str) - 1;
$c = mb_substr($str, $end, 1);
while($end < mb_strlen($str)) {
if(in_array($c, $delimiters))
break;
$end++;
$c = mb_substr($str, $end, 1);
}
return $end;
}
你爲什麼不使用http: //php.net/manual/en/function.mb-strpos.php? – Nelson