Ich versuche, Array-Variableninhalte in eine Protokolldatei zu drucken.
In Magento 1 war es möglich mit Mage::log(print_r($arr, 1), null, 'logfile.log');
Für Magento 2 habe ich in der Klassendatei folgenden Code geschrieben:
protected $_logger;
public function __construct(\Psr\Log\LoggerInterface $logger) {
$this->_logger = $logger;
}
private function getValuesAsHtmlList(\Magento\Framework\Object $object) {
$options = $this->getOptions($object);
//$this->_logger->addDebug($options );
$this->_logger->log(100,null,$options);
}
Wenn ich den Code nach dem Löschen des Caches ausführe, wird Debug.log
&system.log
Dateien die Inhalte des Arrays nicht angezeigt.
Bitte teilen Sie, wenn jemand eine Idee dazu hat.
$this->_logger->debug(json_encode($options));
Diese Methode funktioniert gut für mich.
Überprüfen Sie dann Ihre
system.log
Datei.quelle
Versuchen Sie dies, es wird Array drucken. Geprüft !
quelle
Für Array und auch Objekt verwenden Sie einfach
und überprüfen Sie die Ausgabe in
/var/log/debug.log
Dateiquelle
Ich sehe, dass die Kerndatei var_export verwendet:
quelle