EventBuffer::search
Scans the buffer for an occurrence of a string
Description
public
mixed
EventBuffer::search
(
string
$what
[,
int
$start
= -1
[,
int
$end
= -1
]] )
If the
start
argument is provided, it points to the position at which the search should
begin; 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.
Parameters
-
what
-
String to search.
-
start
-
Start search position.
-
end
-
End search position.
Return Values
Returns numeric position of the first occurance of the string in the
buffer, or FALSE
if string is not found.
WarningThis 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.
Examples
Example #1
EventBuffer::search example
<?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"));
?>
The above example will output
something similar to: