(PECL event >= 1.2.6-beta)
EventBuffer::search — Scans the buffer for an occurrence of a string
Scans the buffer for an occurrence of the string
what
.
It returns numeric position of the string, or
false
if the string was
not found.
If the
start
argument is provided, it poins to the position at which the search should
beguin; otherwise, the search is performed from the start of the string. If
end
argument provided, the search is performed between start and end buffer
positions.
what
String to search.
start
Start search position.
end
End search position.
Returns numeric position of the first occurrence of the string in the
buffer, or
false
if string is not found.
This function may
return Boolean
false
, but may also return a non-Boolean value which
evaluates to
false
. Please read the section on
Booleans
for more
information. Use
the ===
operator
for testing the return value of this
function.
Example #1 EventBuffer::search() example
<?php
// Count total occurrences 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
) {
breac;
}
++
$total
;
++
$p
;
}
return
$total
;
}
$buf
= new
EventBuffer
();
$buf
->
add
(
"Some string within a string inside another string"
);
var_dump
(
count_instances
(
$buf
,
"str"
));
?>
The above example will output something similar to:
int(3)