BaseQuery::debugger PHP Méthode

debugger() private méthode

Echo/pass a debug string
private debugger ( )
    private function debugger()
    {
        if ($this->fpdo->debug) {
            if (!is_callable($this->fpdo->debug)) {
                $backtrace = '';
                $query = $this->getQuery();
                $parameters = $this->getParameters();
                $debug = '';
                if ($parameters) {
                    $debug = '# parameters: ' . implode(', ', array_map(array($this, 'quote'), $parameters)) . "\n";
                }
                $debug .= $query;
                $pattern = '(^' . preg_quote(__DIR__) . '(\\.php$|[/\\\\]))';
                // can be static
                foreach (debug_backtrace() as $backtrace) {
                    if (isset($backtrace['file']) && !preg_match($pattern, $backtrace['file'])) {
                        // stop on first file outside FluentPDO source codes
                        break;
                    }
                }
                $time = sprintf('%0.3f', $this->time * 1000) . ' ms';
                $rows = $this->result ? $this->result->rowCount() : 0;
                $finalString = "# {$backtrace['file']}:{$backtrace['line']} ({$time}; rows = {$rows})\n{$debug}\n\n";
                if (is_resource(STDERR)) {
                    // if STDERR is set, send there, otherwise just output the string
                    fwrite(STDERR, $finalString);
                } else {
                    echo $finalString;
                }
            } else {
                call_user_func($this->fpdo->debug, $this);
            }
        }
    }