EventBuffer::search

(PECL event >= 1.2.6-beta)

EventBuffer::searchScans the buffer for an occurrence of a string

Beschreibung

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

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.

Parameter-Liste

what

String to search.

start

Start search position.

end

End search position.

Rückgabewerte

Returns numeric position of the first occurance of the string in the buffer, or FALSE if string is not found.

Warnung

Diese Funktion kann sowohl das boolsche FALSE zurückliefern, als auch einen nicht-boolschen Wert, welcher zu FALSE ausgewertet wird. Weitere Informationen entnehmen Sie bitte dem Abschnitt über die boolschen Typen. Benutzen Sie deshalb den === Operator, um den Rückgabewert dieser Funktion zu überprüfen.

Beispiele

Beispiel #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"));
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

int(3)

Siehe auch