# ibase_set_event_handler

(PHP 5, PHP 7)

ibase_set_event_handler — Register a callback function to be called when events are posted

### 说明

ibase_set_event_handler ( callable `$event_handler` , string `$event_name1` [, string `$...` ] ) : resource
ibase_set_event_handler ( resource `$connection` , callable `$event_handler` , string `$event_name1` [, string `$...` ] ) : resource

This function registers a PHP user function as event handler for the specified events.

### 参数

`event_handler`

  The callback is called with the event name and the link resource as arguments whenever one of the specified events is posted by the database.

  The callback must return `FALSE` if the event handler should be canceled. Any other return value is ignored. This function accepts up to 15 event arguments.

`event_name1`

  An event name.

`...`

  At most 15 events allowed.

### 返回值

The return value is an event resource. This resource can be used to free the event handler using ibase_free_event_handler().

### 范例

Example #1 ibase_set_event_handler() example

    <?php

    function event_handler($event_name, $link)
    {
        if ($event_name == "NEW ORDER") {
            // process new order
            ibase_query($link, "UPDATE orders SET status='handled'");
        } else if ($event_name == "DB_SHUTDOWN") {
            // free event handler
            return false;
        }
    }

    ibase_set_event_handler($link, "event_handler", "NEW_ORDER", "DB_SHUTDOWN");
    ?>

### 参见

- ibase_free_event_handler() - Cancels a registered event handler
- ibase_wait_event() - Wait for an event to be posted by the database