PHP 7.0.6 Released

sybase_set_message_handler

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

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.

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.

User Contributed Notes

Anonymous
12 years ago
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
To Top