EventBuffer::search

(PECL event >= 1.2.6-beta)

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

Описание

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.

Список параметров

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.

Внимание

Эта функция может возвращать как логическое значение FALSE, так и значение не типа boolean, которое приводится к FALSE. За более подробной информацией обратитесь к разделу Булев тип. Используйте оператор === для проверки значения, возвращаемого этой функцией.

Примеры

Пример #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"));
?>

Результатом выполнения данного примера будет что-то подобное:

int(3)

Смотрите также