EventBuffer::search

(PECL event >= 1.2.6-beta)

EventBuffer::searchСканирует буфер на наличие строки

Описание

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

Сканирует буфер на наличие строки what. Возвращает числовую позицию строки или false, если строка не была найдена.

Если указан аргумент start, он указывает на позицию, с которой должен начинаться поиск; в противном случае поиск выполняется с начала строки. Если указан аргумент end, поиск выполняется между начальной и конечной позициями буфера.

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

what

Строка для поиска.

start

Позиция начала поиска.

end

Позиция окончания поиска.

Возвращаемые значения

Возвращает числовую позицию первого вхождения строки в буфере или false, если строка не найдена.

Внимание

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

Примеры

Пример #1 Пример использования EventBuffer::search()

<?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)

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