sybase_set_message_handler

(PHP 4 >= 4.3.0, PHP 5)

sybase_set_message_handlerDefine um manipulador para quando uma mensagem do servidor é enviada

Descrição

sybase_set_message_handler ( callback $handler [, resource $connection ] ) : bool

sybase_set_message_handler() define uma função do usuário para manipular as funções do usuário geradas pelo servidor. Você deve o nome de uma função global, ou usar uma matriz para especificar um objeto e o nome de um método.

Parâmetros

handler

O manipulador espera cinco argumentos na seguinte ordem: número da mensagem, severidde, estado, número da linha e descrição. Os quatro primeiros são inteiros. O último é uma string. Se a função retornar FALSE, o PHP gera uma mensagem de erro comum.

connection

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em caso de falha.

Changelog

Versão Descrição
4.3.5 O parâmetro connection foi adicionado.

Exemplos

Exemplo #1 Exemplo da 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');
?>

Exemplo #2 Exemplo de sybase_set_message_handler() usando uma classe

<?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'));
?>

Exemplo #3 Exemplo de sybase_set_message_handler() com mensagens não manipuladas

<?php
    
// Return FALSE from this function to indicate you can't handle
    // this. The error is printed out as a warning, the way you're used
    // to it if there is no handler installed.
    
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');
?>

Notas

Nota: Esta função somente está disponível quando utilizando a biblioteca de interface CT do Sybase, mas não pela biblioteca DB.