PHP 7.0.0 RC 8 Released


(PECL libevent >= 0.0.1)

event_setPrepare an event


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:


Signal number or resource indicating the stream.


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


Optional parameter, previously passed to event_set() as arg.



Valid event resource.


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.


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 function to be called when the matching event occurs.


Optional callback parameter.

Return Values

event_set() returns TRUE on success or FALSE on error.


Version Description
0.0.4 EV_SIGNAL support was added.
add a note add a note

User Contributed Notes 1 note

jille at hexon dot cx
4 years ago
If you change your event with event_set() libevent will forget which base your event belongs to. You must call event_base_set() again *before* calling event_add() on it.
To Top