(PECL event >= 1.2.6-beta)
EventBuffer::search — 掃描緩衝區以查找字串的出現
掃描緩衝區以查找字串 what
的出現。它會返回字串的數字位置,如果找不到字串,則返回 false
。
如果提供了 start
參數,則搜尋將從該位置開始;否則,搜尋將從字串的開頭開始。如果提供了 end
參數,則搜尋將在 start 和 end 緩衝區位置之間執行。
what
要搜尋的字串。
start
開始搜尋位置。
end
結束搜尋位置。
回傳字串在緩衝區中第一次出現的數字位置,如果找不到字串,則回傳 false
。
範例 #1 EventBuffer::search() 範例
<?php
// 計算 'buf' 中 'str' 出現的總次數
function count_instances($buf, $str) {
$total = 0;
$p = 0;
$i = 0;
while (1) {
$p = $buf->search($str, $p);
if ($p === FALSE) {
break;
}
++$total;
++$p;
}
return $total;
}
$buf = new EventBuffer();
$buf->add("在另一個字串裡的字串中的一些字串");
var_dump(count_instances($buf, "字串"));
?>
上述範例將輸出類似以下的內容
int(3)