@@ -69,24 +69,24 @@ Rendering PHP Errors and Exceptions
69
69
Another feature provided by this component are the "error renderers", which
70
70
converts PHP errors and exceptions into other formats such as JSON and HTML::
71
71
72
- use Symfony\Component\ErrorHandler \ErrorRenderer\ErrorRenderer;
73
- use Symfony\Component\ErrorHandler \ErrorRenderer\HtmlErrorRenderer;
74
- use Symfony\Component\ErrorHandler \ErrorRenderer\JsonErrorRenderer;
72
+ use Symfony\Component\ErrorCatcher \ErrorRenderer\ErrorRenderer;
73
+ use Symfony\Component\ErrorCatcher \ErrorRenderer\HtmlErrorRenderer;
74
+ use Symfony\Component\ErrorCatcher \ErrorRenderer\JsonErrorRenderer;
75
75
76
76
$renderers = [
77
77
new HtmlErrorRenderer(),
78
78
new JsonErrorRenderer(),
79
79
// ...
80
80
];
81
- $errorRenderer = new ErrorRenderer ($renderers);
81
+ $errorFormatter = new ErrorFormatter ($renderers);
82
82
83
- /** @var Symfony\Component\ErrorHandler \Exception\FlattenException */
83
+ /** @var Symfony\Component\ErrorCatcher \Exception\FlattenException */
84
84
$exception = ...;
85
85
/** @var Symfony\Component\HttpFoundation\Request */
86
86
$request = ...;
87
87
88
88
return new Response(
89
- $errorRenderer ->render($exception, $request->getRequestFormat()),
89
+ $errorFormatter ->render($exception, $request->getRequestFormat()),
90
90
$exception->getStatusCode(),
91
91
$exception->getHeaders()
92
92
);
@@ -96,29 +96,28 @@ Built-in Error Renderers
96
96
97
97
This component provides error renderers for the most common needs:
98
98
99
- * :class: `Symfony\\ Component\\ ErrorHandler \\ ErrorRenderer\\ HtmlErrorRenderer `
99
+ * :class: `Symfony\\ Component\\ ErrorCatcher \\ ErrorRenderer\\ HtmlErrorRenderer `
100
100
renders errors in HTML format;
101
- * :class: `Symfony\\ Component\\ ErrorHandler\\ ErrorRenderer\\ JsonErrorRenderer `
102
- renders errors in JsonErrorRenderer format and it's compliant with the
103
- `RFC 7807 `_ standard;
104
- * :class: `Symfony\\ Component\\ ErrorHandler\\ ErrorRenderer\\ XmlErrorRenderer `
101
+ * :class: `Symfony\\ Component\\ ErrorCatcher\\ ErrorRenderer\\ JsonErrorRenderer `
102
+ renders errors in JSON format and it's compliant with the `RFC 7807 `_ standard;
103
+ * :class: `Symfony\\ Component\\ ErrorCatcher\\ ErrorRenderer\\ XmlErrorRenderer `
105
104
renders errors in XML and Atom formats. It's compliant with the `RFC 7807 `_
106
105
standard;
107
- * :class: `Symfony\\ Component\\ ErrorHandler \\ ErrorRenderer\\ TxtErrorRenderer `
108
- renders errors in regular text format.
106
+ * :class: `Symfony\\ Component\\ ErrorCatcher \\ ErrorRenderer\\ TxtErrorRenderer `
107
+ renders errors in plain text format.
109
108
110
109
Adding a Custom Error Renderer
111
110
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
112
111
113
112
Error renderers are PHP classes that implement the
114
- :class: `Symfony\\ Component\\ ErrorHandler \\ ErrorRenderer\\ ErrorRendererInterface `.
113
+ :class: `Symfony\\ Component\\ ErrorCatcher \\ ErrorRenderer\\ ErrorRendererInterface `.
115
114
For example, if you need to render errors in `JSON-LD format `_, create this
116
115
class anywhere in your project::
117
116
118
- namespace App\ErrorHandler\ErrorRenderer ;
117
+ namespace App\ErrorCatcher ;
119
118
120
- use Symfony\Component\ErrorHandler \ErrorRenderer\ErrorRendererInterface;
121
- use Symfony\Component\ErrorHandler \Exception\FlattenException;
119
+ use Symfony\Component\ErrorCatcher \ErrorRenderer\ErrorRendererInterface;
120
+ use Symfony\Component\ErrorCatcher \Exception\FlattenException;
122
121
123
122
class JsonLdErrorRenderer implements ErrorRendererInterface
124
123
{
@@ -162,7 +161,7 @@ class anywhere in your project::
162
161
163
162
To enable the new error renderer in the application,
164
163
:ref: `register it as a service <service-container-creating-service >` and
165
- :doc: `tag it </service_container/tags >` with the ``error_handler .renderer ``
164
+ :doc: `tag it </service_container/tags >` with the ``error_catcher .renderer ``
166
165
tag.
167
166
168
167
.. configuration-block ::
171
170
172
171
# config/services.yaml
173
172
services :
174
- App\ErrorHandler\ErrorRenderer \JsonLdErrorRenderer :
173
+ App\ErrorCatcher \JsonLdErrorRenderer :
175
174
arguments : ['%kernel.debug%']
176
- tags : ['error_handler .renderer']
175
+ tags : ['error_catcher .renderer']
177
176
178
177
.. code-block :: xml
179
178
@@ -185,21 +184,21 @@ tag.
185
184
https://symfony.com/schema/dic/services/services-1.0.xsd" >
186
185
187
186
<services >
188
- <service id =" App\ErrorHandler\ErrorRenderer \JsonLdErrorRenderer" >
187
+ <service id =" App\ErrorCatcher \JsonLdErrorRenderer" >
189
188
<argument >true</argument >
190
- <tag name =" error_handler .renderer" />
189
+ <tag name =" error_catcher .renderer" />
191
190
</service >
192
191
</services >
193
192
</container >
194
193
195
194
.. code-block :: php
196
195
197
196
// config/services.php
198
- use App\ErrorHandler\ErrorRenderer \JsonLdErrorRenderer;
197
+ use App\ErrorCatcher \JsonLdErrorRenderer;
199
198
200
199
$container->register(JsonLdErrorRenderer::class)
201
200
->setArguments([true]);
202
- ->addTag('error_handler .renderer');
201
+ ->addTag('error_catcher .renderer');
203
202
204
203
.. _`RFC 7807` : https://tools.ietf.org/html/rfc7807
205
204
.. _`JSON-LD format` : https://en.wikipedia.org/wiki/JSON-LD
0 commit comments