EventBuffer::search
EventBuffer::search
(PECL event >= 1.2.6-beta)
EventBuffer :: search - 扫描缓冲区以查找字符串
描述
public mixed EventBuffer::search ( string $what [, int $start = -1 [, int $end = -1 ]] )
扫描缓冲区以查找字符串的出现what
。它返回字符串的数字位置,或者FALSE
如果找不到字符串。
如果start
提供了参数,则指向搜索应该开始的位置; 否则,搜索将从字符串的开头执行。如果end
提供参数,则在开始和结束缓冲区位置之间执行搜索。
参数
what
要搜索的字符串。
start
开始搜索位置。
end
结束搜索位置。
返回值
返回缓冲区中字符串第一次出现的数字位置,或者FALSE
如果找不到字符串。
警告
该函数可能返回布尔值FALSE
,但也可能返回一个非布尔值,其值为FALSE
。有关更多信息,请阅读布尔部分。使用===运算符来测试此函数的返回值。
例子
示例#1 EventBuffer :: search()示例
<?php
// Count total occurances of 'str' in 'buf'
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("Some string within a string inside another string"
var_dump(count_instances($buf, "str")
?>
上面的例子会输出类似于:
int(3)