[ Index ] |
PHP Cross Reference of Joomla 4.2.2 documentation |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** 4 * Joomla! Content Management System 5 * 6 * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> 7 * @license GNU General Public License version 2 or later; see LICENSE 8 */ 9 10 namespace Joomla\CMS\Error\Renderer; 11 12 use Joomla\CMS\Error\AbstractRenderer; 13 14 // phpcs:disable PSR1.Files.SideEffects 15 \defined('JPATH_PLATFORM') or die; 16 // phpcs:enable PSR1.Files.SideEffects 17 18 /** 19 * XML error page renderer 20 * 21 * @since 4.0.0 22 */ 23 class XmlRenderer extends AbstractRenderer 24 { 25 /** 26 * The format (type) of the error page 27 * 28 * @var string 29 * @since 4.0.0 30 */ 31 protected $type = 'xml'; 32 33 /** 34 * Render the error page for the given object 35 * 36 * @param \Throwable $error The error object to be rendered 37 * 38 * @return string 39 * 40 * @since 4.0.0 41 */ 42 public function render(\Throwable $error): string 43 { 44 // Create our data object to be rendered 45 $xw = new \XMLWriter(); 46 $xw->openMemory(); 47 $xw->setIndent(true); 48 $xw->setIndentString("\t"); 49 $xw->startDocument('1.0', 'UTF-8'); 50 51 $xw->startElement('error'); 52 53 $xw->writeElement('code', $error->getCode()); 54 $xw->writeElement('message', $error->getMessage()); 55 56 // Include the stack trace if in debug mode 57 if (JDEBUG) { 58 $xw->writeElement('trace', $error->getTraceAsString()); 59 } 60 61 // End error element 62 $xw->endElement(); 63 64 // Push the data object into the document 65 $this->getDocument()->setBuffer($xw->outputMemory(true)); 66 67 if (ob_get_contents()) { 68 ob_end_clean(); 69 } 70 71 return $this->getDocument()->render(); 72 } 73 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Wed Sep 7 05:41:13 2022 | Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer |