ibase_set_event_handler

イベントが発生した際にコールされるコールバック関数を登録する

説明

resource ibase_set_event_handler(callable $event_handler, string $event_name, string ...$even_names)
resource ibase_set_event_handler(
    resource $connection,
    callable $event_handler,
    string $event_name,
    string ...$event_names
)

この関数は、指定したイベントのハンドラとして PHP ユーザー関数を登録します。

パラメータ

event_handler

コールバックは、データベースから特定のイベントが送信された場合に、 イベント名とリンクリソースを引数としてコールされます。

イベントハンドラがキャンセルされた場合は、 コールバックは false を返す必要があります。 その他の戻り値は無視されます。 この関数は、最大 15 のイベントを引数として受け取ります。

event_name

イベントの名前。

event_names

最大で 15 のイベントを指定できます。

戻り値

返される値はイベントのリソースです。このリソースは、 ibase_free_event_handler でイベントハンドラを開放する際に使用可能です。

例1 ibase_set_event_handler の例

<?php

function event_handler($event_name, $link)
{
    if ($event_name == "NEW ORDER") {
        // 新しい注文を処理します
        ibase_query($link, "UPDATE orders SET status='handled'");
    } else if ($event_name == "DB_SHUTDOWN") {
        // イベントハンドラを解放します
        return false;
    }
}

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

参考

  • ibase_free_event_handler
  • ibase_wait_event