我需要找到字符串中特定字符的所有位置。我使用下面的代碼strpos結果0停止while循環
$pos = 0;
$positions = array();
while($pos = strpos($haystack,$needle,$pos){
$positions[] = $pos;
$pos = $pos+1;
}
的問題,此代碼是,當needle
是在位置1,其返回1,因此不會進入循環。
,所以我嘗試以下
$pos = 0;
$positions = array();
while(($pos = strpos($haystack,$needle,$pos) || (strpos($haystack,$needle,$pos)=== 0){
$positions[] = $pos;
$pos = $pos+1;
}
,並
$pos = 0;
$positions = array();
while(($pos = strpos($haystack,$needle,$pos) || (strpos($haystack,$needle,$pos) != false){
$positions[] = $pos;
$pos = $pos+1;
}
,但似乎沒有奏效。有沒有其他方法。
兩個替代我想給我
Allowed memory size of 268435456 bytes exhausted
,我認爲更多的是與編程錯誤不是內存的問題。
plz幫助。
的可能重複[PHP查找字符串中的子字符串的所有匹配(http://stackoverflow.com/questions/15737408/php-find-all-occurrences字符串中的子字符串) –