sybase_set_message_handler
(PHP 4 >= 4.3.0, PHP 5)
sybase_set_message_handler — Sets the handler called when a server message is raised
说明
bool sybase_set_message_handler ( callback $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.
参数
- 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.
 
返回值
成功时返回 TRUE, 或者在失败时返回 FALSE.
更新日志
| 版本 | 说明 | 
|---|---|
| 4.3.5 | The link_identifier parameter was added. | 
范例
   
     Example #1 sybase_set_message_handler() callback function Example #2 sybase_set_message_handler() callback to a class Example #3 sybase_set_message_handler() unhandled messages
<?php
    
   
   
    
    function msg_handler($msgnumber, $severity, $state, $line, $text)
    {
        var_dump($msgnumber, $severity, $state, $line, $text);
    }
    sybase_set_message_handler('msg_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'));
?>
<?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');
?>
注释
Note: 此函数仅适用于对 Sybase 使用 CT 库接口,而不适用于 DB 库。



