sybase_set_message_handler
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
sybase_set_message_handler — Sets the handler called when a server message is raised
Описание
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
в случае возникновения ошибки.
Примеры
Пример #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');
?>
Пример #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'));
?>
Пример #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');
?>
Примечания
Замечание: Эта функция доступна только при использовании интерфейса к Sybase библиотеки CT, но не библиотеки DB.
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- Sybase
- sybase_affected_rows
- sybase_close
- sybase_connect
- sybase_data_seek
- sybase_deadlock_retry_count
- sybase_fetch_array
- sybase_fetch_assoc
- sybase_fetch_field
- sybase_fetch_object
- sybase_fetch_row
- sybase_field_seek
- sybase_free_result
- sybase_get_last_message
- sybase_min_client_severity
- sybase_min_error_severity
- sybase_min_message_severity
- sybase_min_server_severity
- sybase_num_fields
- sybase_num_rows
- sybase_pconnect
- sybase_query
- sybase_result
- sybase_select_db
- sybase_set_message_handler
- sybase_unbuffered_query
Коментарии
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