EventBuffer::search

(PECL event >= 1.2.6-beta)

EventBuffer::search扫描缓冲区以查找字符串的出现

描述

public EventBuffer::search( string $what , int $start = -1 , int $end = -1 ): mixed

扫描缓冲区以查找字符串 what 的出现。如果未找到该字符串,则返回字符串的数字位置,否则返回 false

如果提供 start 参数,它将指向搜索应开始的位置;否则,将从字符串开头进行搜索。如果提供 end 参数,则在开始和结束缓冲区位置之间进行搜索。

参数

what

要搜索的字符串。

start

开始搜索位置。

end

结束搜索位置。

返回值

返回缓冲区中字符串第一次出现的数字位置,如果未找到字符串,则返回 false

警告

此函数可能会返回布尔值 false,但也可能返回评估为 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("Some string within a string inside another string");
var_dump(count_instances($buf, "str"));
?>

上面的示例将输出类似于

int(3)

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top