event_new
PCNTL
Libevent Functions
PHP Manual

# event_set

Prepare an event

### Description

bool event_set ( resource `$event` , mixed `$fd` , int `$events` , mixed `$callback` [, mixed `$arg` ] )

Prepares the event to be used in event_add. The event is prepared to call the function specified by the `callback` on the events specified in parameter `events`, which is a set of the following flags: `EV_TIMEOUT`, `EV_SIGNAL`, `EV_READ`, `EV_WRITE` and `EV_PERSIST`.

If `EV_SIGNAL` bit is set in parameter `events`, the `fd` is interpreted as signal number.

After initializing the event, use event_base_set to associate the event with its event base.

In case of matching event, these three arguments are passed to the `callback` function:

`fd`

  Signal number or resource indicating the stream.

`events`

  A flag indicating the event. Consists of the following flags: `EV_TIMEOUT`, `EV_SIGNAL`, `EV_READ`, `EV_WRITE` and `EV_PERSIST`.

`arg`

  Optional parameter, previously passed to event_set as `arg`.

### Parameters

`event`

  Valid event resource.

`fd`

  Valid PHP stream resource. The stream must be castable to file descriptor, so you most likely won't be able to use any of filtered streams.

`events`

  A set of flags indicating the desired event, can be `EV_READ` and/or `EV_WRITE`. The additional flag `EV_PERSIST` makes the event to persist until event_del is called, otherwise the callback is invoked only once.

`callback`

  Callback function to be called when the matching event occurs.

`arg`

  Optional callback parameter.

### Return Values

event_set returns `TRUE` on success or `FALSE` on error.

### Changelog

Version | Description
--- | ---
0.0.4 | `EV_SIGNAL` support was added.