本文整理汇总了PHP中SC_Utils_Ex::sfBacktraceToString方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Utils_Ex::sfBacktraceToString方法的具体用法?PHP SC_Utils_Ex::sfBacktraceToString怎么用?PHP SC_Utils_Ex::sfBacktraceToString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SC_Utils_Ex
的用法示例。
在下文中一共展示了SC_Utils_Ex::sfBacktraceToString方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: traceError
/**
* エラーの内容をトレースする.
*
* @access private
* @param PEAR::Error $error PEAR::Error インスタンス
* @param string $sql エラーの発生した SQL 文
* @param array $arrVal プレースホルダ
* @return string トレースしたエラー文字列
*/
function traceError($error, $sql = "", $arrVal = false)
{
$scheme = '';
if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') {
$scheme = "http://";
} else {
$scheme = "https://";
}
$err = $scheme . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . "\n\n" . "SERVER_ADDR: " . $_SERVER['SERVER_ADDR'] . "\n" . "REMOTE_ADDR: " . $_SERVER['REMOTE_ADDR'] . "\n" . "USER_AGENT: " . $_SERVER['HTTP_USER_AGENT'] . "\n\n" . "SQL: " . $sql . "\n\n";
if ($arrVal !== false) {
$err .= "PlaceHolder: " . var_export($arrVal, true) . "\n\n";
}
$err .= $error->getMessage() . "\n\n";
$err .= $error->getUserInfo() . "\n\n";
$err .= SC_Utils_Ex::sfBacktraceToString($error->getBackTrace());
return $err;
}
示例2: sfGetErrMsg
/**
* エラーメッセージを生成する
*
* @return string
*/
function sfGetErrMsg()
{
$errmsg = '';
$errmsg .= $this->lfGetErrMsgHead();
$errmsg .= "\n";
// PEAR エラーを伴う場合
if (!is_null($this->pearResult)) {
$errmsg .= $this->pearResult->message . "\n\n";
$errmsg .= $this->pearResult->userinfo . "\n\n";
$errmsg .= SC_Utils_Ex::sfBacktraceToString($this->pearResult->backtrace);
} else {
if (is_array($this->backtrace)) {
$errmsg .= SC_Utils_Ex::sfBacktraceToString($this->backtrace);
} else {
if (function_exists("debug_backtrace")) {
$backtrace = debug_backtrace();
// バックトレースのうち handle_error 以前は通常不要と考えられるので削除
$cnt = 0;
$offset = 0;
foreach ($backtrace as $key => $arrLine) {
$cnt++;
if (!isset($arrLine['file']) && $arrLine['function'] === 'handle_error') {
$offset = $cnt;
break;
}
}
if ($offset !== 0) {
$backtrace = array_slice($backtrace, $offset);
}
$errmsg .= SC_Utils_Ex::sfBacktraceToString($backtrace);
}
}
}
// デバッグ用のメッセージが指定されている場合
if (!empty($this->arrDebugMsg)) {
$errmsg .= implode("\n\n", $this->arrDebugMsg) . "\n";
}
return $errmsg;
}