本文整理匯總了PHP中CError::__construct方法的典型用法代碼示例。如果您正苦於以下問題:PHP CError::__construct方法的具體用法?PHP CError::__construct怎麽用?PHP CError::__construct使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類CError
的用法示例。
在下文中一共展示了CError::__construct方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: intval
/**
* Конструктор класса, выполняет подмену стандартного конструктора, в зависимости от настроек
* модуля и системы 1С-Битрикс выполняет вывод ошибки или в лог (задаётся на настройках модуля) или на экран пользователя
* @param string - Сообщение об ошибке
* @param int - Код ошибки
* @param string - Текст запроса к БД
*/
function __construct($sMessage = '', $nCode = 0, $sQuery = '')
{
parent::__construct($sMessage, intval($nCode));
$this->sQuery = $sQuery;
if ($this->sQuery) {
$sQuery = preg_replace("/([0-9a-f]){32}/", "********************************", $sQuery);
// Hides all hashes
$sQueryStr = "{$sQuery}";
}
$sErrorText = "Ошибка вызова MySQL: " . $this->getMessage() . "\n" . "Код ошибки: " . $this->sError . "\n" . "Текст запроса: " . $sQueryStr . "\n" . "Стэк вызова функций: \n";
$arTrace = $this->getTrace();
foreach ($arTrace as $item => $arFunction) {
$sErrorText .= 'В файле: ' . $arFunction['file'] . "\n";
if (array_key_exists('class', $arFunction) && $arFunction['class'] != '') {
$sErrorText .= $arFunction['class'] . $arFunction['type'] . $arFunction['function'] . '() - строка ' . $arFunction['line'];
} else {
$sErrorText .= $arFunction['function'] . '() - строка ' . $arFunction['line'];
}
$sErrorText .= "\n" . '----------------------------------------------------' . "\n";
}
if (COption::GetOptionString('koloslib', 'db_log') == 'Y') {
error_log(date('d.m.Y H:i') . ' ' . $sErrorText . "\n===========================\n", 3, ROOT_DIR . COption::GetOptionString('koloslib', 'db_log_path'));
}
$this->sMessage = "DB_MYSQL_ERROR";
$this->sErrorText = '';
}