@@ 452-477 (lines=26) @@ | ||
449 | } |
|
450 | } |
|
451 | ||
452 | if ($documentFound === false) { |
|
453 | ||
454 | // UTF-8 hack: http://php.net/manual/en/domdocument.loadhtml.php#95251 |
|
455 | $xmlHackUsed = false; |
|
456 | /** @noinspection StringFragmentMisplacedInspection */ |
|
457 | if (\stripos('<?xml', $html) !== 0) { |
|
458 | $xmlHackUsed = true; |
|
459 | $html = '<?xml encoding="' . $this->getEncoding() . '" ?>' . $html; |
|
460 | } |
|
461 | ||
462 | if ($html !== '') { |
|
463 | $this->document->loadHTML($html, $optionsXml); |
|
464 | } |
|
465 | ||
466 | // remove the "xml-encoding" hack |
|
467 | if ($xmlHackUsed) { |
|
468 | foreach ($this->document->childNodes as $child) { |
|
469 | if ($child->nodeType === \XML_PI_NODE) { |
|
470 | /** @noinspection UnusedFunctionResultInspection */ |
|
471 | $this->document->removeChild($child); |
|
472 | ||
473 | break; |
|
474 | } |
|
475 | } |
|
476 | } |
|
477 | } |
|
478 | ||
479 | // set encoding |
|
480 | $this->document->encoding = $this->getEncoding(); |
@@ 185-208 (lines=24) @@ | ||
182 | } |
|
183 | } |
|
184 | ||
185 | if ($documentFound === false) { |
|
186 | ||
187 | // UTF-8 hack: http://php.net/manual/en/domdocument.loadhtml.php#95251 |
|
188 | $xmlHackUsed = false; |
|
189 | /** @noinspection StringFragmentMisplacedInspection */ |
|
190 | if (\stripos('<?xml', $xml) !== 0) { |
|
191 | $xmlHackUsed = true; |
|
192 | $xml = '<?xml encoding="' . $this->getEncoding() . '" ?>' . $xml; |
|
193 | } |
|
194 | ||
195 | $documentFound = $this->document->loadXML($xml, $optionsXml); |
|
196 | ||
197 | // remove the "xml-encoding" hack |
|
198 | if ($xmlHackUsed) { |
|
199 | foreach ($this->document->childNodes as $child) { |
|
200 | if ($child->nodeType === \XML_PI_NODE) { |
|
201 | /** @noinspection UnusedFunctionResultInspection */ |
|
202 | $this->document->removeChild($child); |
|
203 | ||
204 | break; |
|
205 | } |
|
206 | } |
|
207 | } |
|
208 | } |
|
209 | ||
210 | if ( |
|
211 | $documentFound === false |