sybase_set_message_handler

(PHP 4 >= 4.3.0, PHP 5)

sybase_set_message_handlerSets the handler called when a server message is raised

Description

bool sybase_set_message_handler ( callable $handler [, resource $link_identifier ] )

sybase_set_message_handler() sets a user function to handle messages generated by the server. You may specify the name of a global function, or use an array to specify an object reference and a method name.

Parameters

handler

The handler expects five arguments in the following order: message number, severity, state, line number and description. The first four are integers. The last is a string. If the function returns FALSE, PHP generates an ordinary error message.

link_identifier

If the link identifier isn't specified, the last opened link is assumed.

Return Values

Returns TRUE on success or FALSE on failure.

Changelog

Version Description
4.3.5 The link_identifier parameter was added.

Examples

Example #1 sybase_set_message_handler() callback function

<?php
    
function msg_handler($msgnumber$severity$state$line$text)
    {
        
var_dump($msgnumber$severity$state$line$text);
    }

    
sybase_set_message_handler('msg_handler');
?>

Example #2 sybase_set_message_handler() callback to a class

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

Example #3 sybase_set_message_handler() unhandled messages

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

Notes

Note: This function is only available when using the CT library interface to Sybase, and not with the DB library.

Коментарии

Автор:
You can check for Showplan messages using this callback. Showplan message numbers go from 6201 through 6292 (at least here, on SQL Server/11.0.3.3).

select error, description from master..sysmessages where error between 6201 and 6292
2003-06-19 17:23:50
http://php5.kiev.ua/manual/ru/function.sybase-set-message-handler.html

    Поддержать сайт на родительском проекте КГБ