(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 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.
  
what
    String to search.
start
    Start search position.
end
    End search position.
   Returns numeric position of the first occurance of the string in the
   buffer, or FALSE if string is not found.
  
Esta función puede
devolver el valor booleano FALSE, pero también puede devolver un valor no booleano que se
evalúa como FALSE. Por favor lea la sección sobre Booleanos para más
información. Use el operador
=== para comprobar el valor devuelto por esta
función.
Ejemplo #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"));
?>
El resultado del ejemplo sería algo similar a:
int(3)