Scans the buffer for an occurrence of a string

# EventBuffer::search

(PECL event >= 1.2.6-beta)

EventBuffer::search — Scans 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` を返す可能性がありますが、`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)

### 参考

- EventBuffer::searchEol() - Scans the buffer for an occurrence of an end of line