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, так и нелогическое значение, которое приводится к false. Прочитайте раздел «Логический тип», чтобы получить дополнительную информацию. Используйте оператор === для проверки значения, которое возвращает функция.

Примеры

Пример #1 Пример сканирования буфера на наличие строки методом EventBuffer::search()

<?php

// Подсчитать, сколько раз подстрока 'str' входит в строку '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)

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

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top