PHPMailer\PHPMailer

PHPMailer::edebug()protectedWP 1.0

Output debugging info via a user-defined method. Only generates output if debug output is enabled.

Метод класса: PHPMailer{}

Хуков нет.

Возвращает

null. Ничего (null).

Использование

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->edebug( $str );
$str(строка) (обязательный)
-

Заметки

  • Смотрите: PHPMailer::$Debugoutput
  • Смотрите: PHPMailer::$SMTPDebug

Код PHPMailer::edebug() WP 6.5.2

protected function edebug($str)
{
    if ($this->SMTPDebug <= 0) {
        return;
    }
    //Is this a PSR-3 logger?
    if ($this->Debugoutput instanceof \Psr\Log\LoggerInterface) {
        $this->Debugoutput->debug($str);

        return;
    }
    //Avoid clash with built-in function names
    if (is_callable($this->Debugoutput) && !in_array($this->Debugoutput, ['error_log', 'html', 'echo'])) {
        call_user_func($this->Debugoutput, $str, $this->SMTPDebug);

        return;
    }
    switch ($this->Debugoutput) {
        case 'error_log':
            //Don't output, just log
            /** @noinspection ForgottenDebugOutputInspection */
            error_log($str);
            break;
        case 'html':
            //Cleans up output a bit for a better looking, HTML-safe output
            echo htmlentities(
                preg_replace('/[\r\n]+/', '', $str),
                ENT_QUOTES,
                'UTF-8'
            ), "<br>\n";
            break;
        case 'echo':
        default:
            //Normalize line breaks
            $str = preg_replace('/\r\n|\r/m', "\n", $str);
            echo gmdate('Y-m-d H:i:s'),
            "\t",
                //Trim trailing space
            trim(
                //Indent for readability, except for trailing break
                str_replace(
                    "\n",
                    "\n                   \t                  ",
                    trim($str)
                )
            ),
            "\n";
    }
}