Extbase - Debugging: Unterschied zwischen den Versionen
Aus Wikizone
| Zeile 6: | Zeile 6: | ||
Es gibt mehrere, eines im Core eines unter Extbase, das führt leicht zu Verwirrung. Außerdem noch das alte unter t2lib::div (obsolete) Will man sie nutzen geht das z.B. so | Es gibt mehrere, eines im Core eines unter Extbase, das führt leicht zu Verwirrung. Außerdem noch das alte unter t2lib::div (obsolete) Will man sie nutzen geht das z.B. so | ||
| − | use \TYPO3\CMS\Extbase\Utility\DebuggerUtility; | + | use \TYPO3\CMS\Extbase\Utility\DebuggerUtility; |
| − | use \TYPO3\CMS\Core\Utility\DebugUtility; | + | use \TYPO3\CMS\Core\Utility\DebugUtility; |
... | ... | ||
DebugUtility::debug($this->arrLines,"lines"); | DebugUtility::debug($this->arrLines,"lines"); | ||
Aktuelle Version vom 1. Juni 2016, 15:22 Uhr
Debugging tools[Bearbeiten]
Links[Bearbeiten]
https://typo3.org/api/typo3cms/class_t_y_p_o3_1_1_c_m_s_1_1_core_1_1_utility_1_1_debug_utility.html
Es gibt mehrere, eines im Core eines unter Extbase, das führt leicht zu Verwirrung. Außerdem noch das alte unter t2lib::div (obsolete) Will man sie nutzen geht das z.B. so
use \TYPO3\CMS\Extbase\Utility\DebuggerUtility; use \TYPO3\CMS\Core\Utility\DebugUtility; ... DebugUtility::debug($this->arrLines,"lines");
Extbase Debugging Tool[Bearbeiten]
print \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump( $this->settings['foo'] );
print \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump( $this->settings['bla']['bar'] );
t3lib_utility_Debug::debug($var, 'Debug: ' . __FILE__ . ' in Line: ' . __LINE__);
# mit namespaces
\TYPO3\CMS\Core\Utility\DebugUtility::debug($var, 'Debug: ' . __FILE__ . ' in Line: ' . __LINE__);
Der var_dump kommt auch mit großen Objekten klar und kann auch Arrays anzeigen (gibt es aber erst in 4.6 oder 4.7):
Tx_Extbase_Utility_Debugger::var_dump($var);
# mit namespaces
\TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($var);
# Anzahl der Objekte ausgeben
t3lib_utility_Debug::debug(count($objects))
Debugging über eigenes Debug File[Bearbeiten]
An manchen Stellen funktioniert debug nicht. Man kann aber in eine Datei schreiben. Evtl. vorher injecten.
//Write content to a file
$textFileCnt = 'Label: '.' SignalName:'.$signalName.chr(10);
$file1 = \TYPO3\CMS\Core\Utility\GeneralUtility::getFileAbsFileName('fileadmin/debug/debug.txt');
\TYPO3\CMS\Core\Utility\GeneralUtility::writeFile($file1, $textFileCnt);
Debugging über DevLog[Bearbeiten]
Diese Extension kann ebenfalls ein Debug File schreiben. Das Logging muß zusätzlich im Install Tool aktiviert sein.