Manuel PHP
Précédent |  | Suivant

# sybase_set_message_handler

(PHP 4 >= 4.3.0, PHP 5)

sybase_set_message_handler -- Configure le gestionnaire de messages Sybase

## Description

bool sybase_set_message_handler ( callback handler [, resource connection] )

sybase_set_message_handler() configure la fonction handler pour qu'il soit le gestionnaire des messages générés par le serveur Sybase. Vous pouvez spécifier le nom d'une fonction globale, ou bien utiliser un tableau pour spécifier un objet et un nom de méthode.

> Note : Cette fonction n'est disponible qu'avec la bibliothèque CT Sybase, et non pas avec la bibliothèque DB.

Le gestionnaire attend 5 arguments, dans l'ordre suivant : numéro de message, sévérité, état, numéro de ligne et description. Les 4 premiers paramètres sont des entiers et le dernier est une chaîne de caractères. Si ce gestionnaire retourne la valeur `FALSE`, PHP retournera un message d'erreur classique.

Cette fonction retourne `TRUE` en cas de succès, `FALSE` en cas d'échec.

> Note : Le paramètre connection a été ajouté dans PHP 4.3.5.

Exemple 1. Fonction de callback pour sybase_set_message_handler()

`<?php function msg_handler($msgnumber, $severity, $state, $line, $text) { var_dump($msgnumber, $severity, $state, $line, $text); } sybase_set_message_handler('msg_handler'); ?>`

Exemple 2. Classe de callback pour sybase_set_message_handler()

`<?php class Sybase { function handler($msgnumber, $severity, $state, $line, $text) { var_dump($msgnumber, $severity, $state, $line, $text); } } $sybase = new Sybase(); sybase_set_message_handler(array($sybase, 'handler')); ?>`

Exemple 3. Gestion des messages non traités de sybase_set_message_handler()

`<?php
// Retournez FALSE si vous voulez indiquer que vous ne savez pas
// traiter ce message. Cette erreur est alors affichée sous la forme
// d'une alerte, comme s'il n'y avait pas de gestionnaire installé.
function msg_handler($msgnumber, $severity, $state, $line, $text)
{
if (257 == $msgnumber) {
return FALSE;
}
var_dump($msgnumber, $severity, $state, $line, $text);
}
sybase_set_message_handler('msg_handler');
?>`

Précédent | Sommaire | Suivant
sybase_select_db | Niveau supérieur | sybase_unbuffered_query