@@ -164,7 +164,7 @@ |
||
164 | 164 | |
165 | 165 | return preg_replace_callback( |
166 | 166 | '(<([-\\w]++):[^>]*?\\K\\s*/?>)', |
167 | - function ($m) use ($prefixes) |
|
167 | + function($m) use ($prefixes) |
|
168 | 168 | { |
169 | 169 | $return = $m[0]; |
170 | 170 | $prefix = $m[1]; |
@@ -106,10 +106,10 @@ discard block |
||
106 | 106 | } |
107 | 107 | |
108 | 108 | /** |
109 | - * |
|
110 | - * |
|
111 | - * @return self |
|
112 | - */ |
|
109 | + * |
|
110 | + * |
|
111 | + * @return self |
|
112 | + */ |
|
113 | 113 | protected function insertElement(string $nodeName, string $where, string $text): self |
114 | 114 | { |
115 | 115 | $pos = strpos($nodeName, ':'); |
@@ -128,10 +128,10 @@ discard block |
||
128 | 128 | } |
129 | 129 | |
130 | 130 | /** |
131 | - * |
|
132 | - * |
|
133 | - * @return self |
|
134 | - */ |
|
131 | + * |
|
132 | + * |
|
133 | + * @return self |
|
134 | + */ |
|
135 | 135 | protected function insertXslElement(string $localName, string $where, array $arguments): self |
136 | 136 | { |
137 | 137 | $callback = [$this->ownerDocument, 'create' . $localName]; |
@@ -146,34 +146,34 @@ discard block |
||
146 | 146 | } |
147 | 147 | |
148 | 148 | /** |
149 | - * Evaluate and return the result of a given XPath expression using this element as context node |
|
150 | - * |
|
151 | - * @param string $expr XPath expression |
|
152 | - * @return mixed |
|
153 | - */ |
|
149 | + * Evaluate and return the result of a given XPath expression using this element as context node |
|
150 | + * |
|
151 | + * @param string $expr XPath expression |
|
152 | + * @return mixed |
|
153 | + */ |
|
154 | 154 | public function evaluate(string $expr) |
155 | 155 | { |
156 | 156 | return $this->ownerDocument->evaluate($expr, $this); |
157 | 157 | } |
158 | 158 | |
159 | 159 | /** |
160 | - * Evaluate and return the first element of a given XPath query using this element as context node |
|
161 | - * |
|
162 | - * @param string $expr XPath expression |
|
163 | - * @return DOMNode|null |
|
164 | - */ |
|
160 | + * Evaluate and return the first element of a given XPath query using this element as context node |
|
161 | + * |
|
162 | + * @param string $expr XPath expression |
|
163 | + * @return DOMNode|null |
|
164 | + */ |
|
165 | 165 | public function firstOf(string $expr): ?DOMNode |
166 | 166 | { |
167 | 167 | return $this->ownerDocument->firstOf($expr, $this); |
168 | 168 | } |
169 | 169 | |
170 | 170 | /** |
171 | - * Insert given element relative to this element's position |
|
172 | - * |
|
173 | - * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
174 | - * @param self $element |
|
175 | - * @return self |
|
176 | - */ |
|
171 | + * Insert given element relative to this element's position |
|
172 | + * |
|
173 | + * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
174 | + * @param self $element |
|
175 | + * @return self |
|
176 | + */ |
|
177 | 177 | public function insertAdjacentElement(string $where, self $element): self |
178 | 178 | { |
179 | 179 | $this->insertAdjacentNode($where, $element); |
@@ -182,24 +182,24 @@ discard block |
||
182 | 182 | } |
183 | 183 | |
184 | 184 | /** |
185 | - * Insert given text relative to this element's position |
|
186 | - * |
|
187 | - * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
188 | - * @param string $text |
|
189 | - * @return void |
|
190 | - */ |
|
185 | + * Insert given text relative to this element's position |
|
186 | + * |
|
187 | + * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
188 | + * @param string $text |
|
189 | + * @return void |
|
190 | + */ |
|
191 | 191 | public function insertAdjacentText(string $where, string $text): void |
192 | 192 | { |
193 | 193 | $this->insertAdjacentNode($where, $this->ownerDocument->createTextNode($text)); |
194 | 194 | } |
195 | 195 | |
196 | 196 | /** |
197 | - * Insert given XML relative to this element's position |
|
198 | - * |
|
199 | - * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
200 | - * @param string $xml |
|
201 | - * @return void |
|
202 | - */ |
|
197 | + * Insert given XML relative to this element's position |
|
198 | + * |
|
199 | + * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
200 | + * @param string $xml |
|
201 | + * @return void |
|
202 | + */ |
|
203 | 203 | public function insertAdjacentXML(string $where, string $xml): void |
204 | 204 | { |
205 | 205 | $fragment = $this->ownerDocument->createDocumentFragment(); |
@@ -209,32 +209,32 @@ discard block |
||
209 | 209 | } |
210 | 210 | |
211 | 211 | /** |
212 | - * Evaluate and return the result of a given XPath query using this element as context node |
|
213 | - * |
|
214 | - * @param string $expr XPath expression |
|
215 | - * @return DOMNodeList |
|
216 | - */ |
|
212 | + * Evaluate and return the result of a given XPath query using this element as context node |
|
213 | + * |
|
214 | + * @param string $expr XPath expression |
|
215 | + * @return DOMNodeList |
|
216 | + */ |
|
217 | 217 | public function query(string $expr): DOMNodeList |
218 | 218 | { |
219 | 219 | return $this->ownerDocument->query($expr, $this); |
220 | 220 | } |
221 | 221 | |
222 | 222 | /** |
223 | - * Remove this element from the document |
|
224 | - * |
|
225 | - * @return void |
|
226 | - */ |
|
223 | + * Remove this element from the document |
|
224 | + * |
|
225 | + * @return void |
|
226 | + */ |
|
227 | 227 | public function remove(): void |
228 | 228 | { |
229 | 229 | $this->parentNode->removeChild($this); |
230 | 230 | } |
231 | 231 | |
232 | 232 | /** |
233 | - * Replace this element with given nodes/text |
|
234 | - * |
|
235 | - * @param DOMNode|string $nodes |
|
236 | - * @return void |
|
237 | - */ |
|
233 | + * Replace this element with given nodes/text |
|
234 | + * |
|
235 | + * @param DOMNode|string $nodes |
|
236 | + * @return void |
|
237 | + */ |
|
238 | 238 | public function replaceWith(...$nodes): void |
239 | 239 | { |
240 | 240 | foreach ($nodes as $node) |
@@ -249,11 +249,11 @@ discard block |
||
249 | 249 | } |
250 | 250 | |
251 | 251 | /** |
252 | - * Add namespace declarations that may be missing in given XML |
|
253 | - * |
|
254 | - * @param string $xml Original XML |
|
255 | - * @return string Modified XML |
|
256 | - */ |
|
252 | + * Add namespace declarations that may be missing in given XML |
|
253 | + * |
|
254 | + * @param string $xml Original XML |
|
255 | + * @return string Modified XML |
|
256 | + */ |
|
257 | 257 | protected function addMissingNamespaceDeclarations(string $xml): string |
258 | 258 | { |
259 | 259 | preg_match_all('(xmlns:\\K[-\\w]++(?==))', $xml, $m); |
@@ -278,12 +278,12 @@ discard block |
||
278 | 278 | } |
279 | 279 | |
280 | 280 | /** |
281 | - * Insert given node relative to this element's position |
|
282 | - * |
|
283 | - * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
284 | - * @param DOMNode $node |
|
285 | - * @return void |
|
286 | - */ |
|
281 | + * Insert given node relative to this element's position |
|
282 | + * |
|
283 | + * @param string $where One of 'beforebegin', 'afterbegin', 'beforeend', 'afterend' |
|
284 | + * @param DOMNode $node |
|
285 | + * @return void |
|
286 | + */ |
|
287 | 287 | protected function insertAdjacentNode(string $where, DOMNode $node): void |
288 | 288 | { |
289 | 289 | $where = strtolower($where); |
@@ -15,11 +15,11 @@ discard block |
||
15 | 15 | class Document extends DOMDocument |
16 | 16 | { |
17 | 17 | /** |
18 | - * @link https://www.php.net/manual/domdocument.construct.php |
|
19 | - * |
|
20 | - * @param string $version Version number of the document |
|
21 | - * @param string $encoding Encoding of the document |
|
22 | - */ |
|
18 | + * @link https://www.php.net/manual/domdocument.construct.php |
|
19 | + * |
|
20 | + * @param string $version Version number of the document |
|
21 | + * @param string $encoding Encoding of the document |
|
22 | + */ |
|
23 | 23 | public function __construct(string $version = '1.0', string $encoding = 'utf-8') |
24 | 24 | { |
25 | 25 | parent::__construct($version, $encoding); |
@@ -28,11 +28,11 @@ discard block |
||
28 | 28 | } |
29 | 29 | |
30 | 30 | /** |
31 | - * Create and return an xsl:apply-templates element |
|
32 | - * |
|
33 | - * @param string $select XPath expression for the "select" attribute |
|
34 | - * @return Element |
|
35 | - */ |
|
31 | + * Create and return an xsl:apply-templates element |
|
32 | + * |
|
33 | + * @param string $select XPath expression for the "select" attribute |
|
34 | + * @return Element |
|
35 | + */ |
|
36 | 36 | public function createXslApplyTemplates(string $select = null): Element |
37 | 37 | { |
38 | 38 | $element = $this->createElementXSL('apply-templates'); |
@@ -45,12 +45,12 @@ discard block |
||
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
48 | - * Create and return an xsl:attribute element |
|
49 | - * |
|
50 | - * @param string $name Attribute's name |
|
51 | - * @param string $text Text content for the element |
|
52 | - * @return Element |
|
53 | - */ |
|
48 | + * Create and return an xsl:attribute element |
|
49 | + * |
|
50 | + * @param string $name Attribute's name |
|
51 | + * @param string $text Text content for the element |
|
52 | + * @return Element |
|
53 | + */ |
|
54 | 54 | public function createXslAttribute(string $name, string $text = ''): Element |
55 | 55 | { |
56 | 56 | $element = $this->createElementXSL('attribute', $text); |
@@ -60,32 +60,32 @@ discard block |
||
60 | 60 | } |
61 | 61 | |
62 | 62 | /** |
63 | - * Create and return an xsl:choose element |
|
64 | - * |
|
65 | - * @return Element |
|
66 | - */ |
|
63 | + * Create and return an xsl:choose element |
|
64 | + * |
|
65 | + * @return Element |
|
66 | + */ |
|
67 | 67 | public function createXslChoose(): Element |
68 | 68 | { |
69 | 69 | return $this->createElementXSL('choose'); |
70 | 70 | } |
71 | 71 | |
72 | 72 | /** |
73 | - * Create and return an xsl:comment element |
|
74 | - * |
|
75 | - * @param string $text Text content for the comment |
|
76 | - * @return Element |
|
77 | - */ |
|
73 | + * Create and return an xsl:comment element |
|
74 | + * |
|
75 | + * @param string $text Text content for the comment |
|
76 | + * @return Element |
|
77 | + */ |
|
78 | 78 | public function createXslComment(string $text = ''): Element |
79 | 79 | { |
80 | 80 | return $this->createElementXSL('comment', $text); |
81 | 81 | } |
82 | 82 | |
83 | 83 | /** |
84 | - * Create and return an xsl:copy-of element |
|
85 | - * |
|
86 | - * @param string $select XPath expression for the "select" attribute |
|
87 | - * @return Element |
|
88 | - */ |
|
84 | + * Create and return an xsl:copy-of element |
|
85 | + * |
|
86 | + * @param string $select XPath expression for the "select" attribute |
|
87 | + * @return Element |
|
88 | + */ |
|
89 | 89 | public function createXslCopyOf(string $select): Element |
90 | 90 | { |
91 | 91 | $element = $this->createElementXSL('copy-of'); |
@@ -95,12 +95,12 @@ discard block |
||
95 | 95 | } |
96 | 96 | |
97 | 97 | /** |
98 | - * Create and return an xsl:if element |
|
99 | - * |
|
100 | - * @param string $test XPath expression for the "test" attribute |
|
101 | - * @param string $text Text content for the element |
|
102 | - * @return Element |
|
103 | - */ |
|
98 | + * Create and return an xsl:if element |
|
99 | + * |
|
100 | + * @param string $test XPath expression for the "test" attribute |
|
101 | + * @param string $text Text content for the element |
|
102 | + * @return Element |
|
103 | + */ |
|
104 | 104 | public function createXslIf(string $test, string $text = ''): Element |
105 | 105 | { |
106 | 106 | $element = $this->createElementXSL('if', $text); |
@@ -110,33 +110,33 @@ discard block |
||
110 | 110 | } |
111 | 111 | |
112 | 112 | /** |
113 | - * Create and return an xsl:otherwise element |
|
114 | - * |
|
115 | - * @param string $text Text content for the element |
|
116 | - * @return Element |
|
117 | - */ |
|
113 | + * Create and return an xsl:otherwise element |
|
114 | + * |
|
115 | + * @param string $text Text content for the element |
|
116 | + * @return Element |
|
117 | + */ |
|
118 | 118 | public function createXslOtherwise(string $text = ''): Element |
119 | 119 | { |
120 | 120 | return $this->createElementXSL('otherwise', $text); |
121 | 121 | } |
122 | 122 | |
123 | 123 | /** |
124 | - * Create and return an xsl:text element |
|
125 | - * |
|
126 | - * @param string $text Text content for the element |
|
127 | - * @return Element |
|
128 | - */ |
|
124 | + * Create and return an xsl:text element |
|
125 | + * |
|
126 | + * @param string $text Text content for the element |
|
127 | + * @return Element |
|
128 | + */ |
|
129 | 129 | public function createXslText(string $text = ''): Element |
130 | 130 | { |
131 | 131 | return $this->createElementXSL('text', $text); |
132 | 132 | } |
133 | 133 | |
134 | 134 | /** |
135 | - * Create and return an xsl:value-of element |
|
136 | - * |
|
137 | - * @param string $select XPath expression for the "select" attribute |
|
138 | - * @return Element |
|
139 | - */ |
|
135 | + * Create and return an xsl:value-of element |
|
136 | + * |
|
137 | + * @param string $select XPath expression for the "select" attribute |
|
138 | + * @return Element |
|
139 | + */ |
|
140 | 140 | public function createXslValueOf(string $select): Element |
141 | 141 | { |
142 | 142 | $element = $this->createElementXSL('value-of'); |
@@ -146,12 +146,12 @@ discard block |
||
146 | 146 | } |
147 | 147 | |
148 | 148 | /** |
149 | - * Create and return an xsl:variable element |
|
150 | - * |
|
151 | - * @param string $name Name of the variable |
|
152 | - * @param string $select XPath expression |
|
153 | - * @return Element |
|
154 | - */ |
|
149 | + * Create and return an xsl:variable element |
|
150 | + * |
|
151 | + * @param string $name Name of the variable |
|
152 | + * @param string $select XPath expression |
|
153 | + * @return Element |
|
154 | + */ |
|
155 | 155 | public function createXslVariable(string $name, string $select = null): Element |
156 | 156 | { |
157 | 157 | $element = $this->createElementXSL('variable'); |
@@ -165,12 +165,12 @@ discard block |
||
165 | 165 | } |
166 | 166 | |
167 | 167 | /** |
168 | - * Create and return an xsl:when element |
|
169 | - * |
|
170 | - * @param string $test XPath expression for the "test" attribute |
|
171 | - * @param string $text Text content for the element |
|
172 | - * @return Element |
|
173 | - */ |
|
168 | + * Create and return an xsl:when element |
|
169 | + * |
|
170 | + * @param string $test XPath expression for the "test" attribute |
|
171 | + * @param string $text Text content for the element |
|
172 | + * @return Element |
|
173 | + */ |
|
174 | 174 | public function createXslWhen(string $test, string $text = ''): Element |
175 | 175 | { |
176 | 176 | $element = $this->createElementXSL('when', $text); |
@@ -180,51 +180,51 @@ discard block |
||
180 | 180 | } |
181 | 181 | |
182 | 182 | /** |
183 | - * Evaluate and return the result of a given XPath expression |
|
184 | - * |
|
185 | - * @param string $expr XPath expression |
|
186 | - * @param DOMNode $node Context node |
|
187 | - * @param bool $registerNodeNS Whether to register the node's namespace |
|
188 | - * @return mixed |
|
189 | - */ |
|
183 | + * Evaluate and return the result of a given XPath expression |
|
184 | + * |
|
185 | + * @param string $expr XPath expression |
|
186 | + * @param DOMNode $node Context node |
|
187 | + * @param bool $registerNodeNS Whether to register the node's namespace |
|
188 | + * @return mixed |
|
189 | + */ |
|
190 | 190 | public function evaluate(string $expr, DOMNode $node = null, bool $registerNodeNS = true) |
191 | 191 | { |
192 | 192 | return $this->xpath('evaluate', func_get_args()); |
193 | 193 | } |
194 | 194 | |
195 | 195 | /** |
196 | - * Evaluate and return the first element of a given XPath query |
|
197 | - * |
|
198 | - * @param string $expr XPath expression |
|
199 | - * @param DOMNode $node Context node |
|
200 | - * @param bool $registerNodeNS Whether to register the node's namespace |
|
201 | - * @return DOMNode|null |
|
202 | - */ |
|
196 | + * Evaluate and return the first element of a given XPath query |
|
197 | + * |
|
198 | + * @param string $expr XPath expression |
|
199 | + * @param DOMNode $node Context node |
|
200 | + * @param bool $registerNodeNS Whether to register the node's namespace |
|
201 | + * @return DOMNode|null |
|
202 | + */ |
|
203 | 203 | public function firstOf(string $expr, DOMNode $node = null, bool $registerNodeNS = true): ?DOMNode |
204 | 204 | { |
205 | 205 | return $this->xpath('query', func_get_args())->item(0); |
206 | 206 | } |
207 | 207 | |
208 | 208 | /** |
209 | - * Evaluate and return the result of a given XPath query |
|
210 | - * |
|
211 | - * @param string $expr XPath expression |
|
212 | - * @param DOMNode $node Context node |
|
213 | - * @param bool $registerNodeNS Whether to register the node's namespace |
|
214 | - * @return DOMNodeList |
|
215 | - */ |
|
209 | + * Evaluate and return the result of a given XPath query |
|
210 | + * |
|
211 | + * @param string $expr XPath expression |
|
212 | + * @param DOMNode $node Context node |
|
213 | + * @param bool $registerNodeNS Whether to register the node's namespace |
|
214 | + * @return DOMNodeList |
|
215 | + */ |
|
216 | 216 | public function query(string $expr, DOMNode $node = null, bool $registerNodeNS = true): DOMNodeList |
217 | 217 | { |
218 | 218 | return $this->xpath('query', func_get_args()); |
219 | 219 | } |
220 | 220 | |
221 | 221 | /** |
222 | - * Create and return an XSL element |
|
223 | - * |
|
224 | - * @param string $name Element's local name |
|
225 | - * @param string $text Text content for the element |
|
226 | - * @return Element |
|
227 | - */ |
|
222 | + * Create and return an XSL element |
|
223 | + * |
|
224 | + * @param string $name Element's local name |
|
225 | + * @param string $text Text content for the element |
|
226 | + * @return Element |
|
227 | + */ |
|
228 | 228 | protected function createElementXSL(string $localName, string $text = ''): Element |
229 | 229 | { |
230 | 230 | return $this->createElementNS( |
@@ -235,12 +235,12 @@ discard block |
||
235 | 235 | } |
236 | 236 | |
237 | 237 | /** |
238 | - * Execute a DOMXPath method and return the result |
|
239 | - * |
|
240 | - * @param string $methodName |
|
241 | - * @param array $args |
|
242 | - * @return mixed |
|
243 | - */ |
|
238 | + * Execute a DOMXPath method and return the result |
|
239 | + * |
|
240 | + * @param string $methodName |
|
241 | + * @param array $args |
|
242 | + * @return mixed |
|
243 | + */ |
|
244 | 244 | protected function xpath(string $methodName, array $args) |
245 | 245 | { |
246 | 246 | $xpath = new DOMXPath($this); |