@@ 147-169 (lines=23) @@ | ||
144 | } |
|
145 | } |
|
146 | ||
147 | if ($documentFound === false) { |
|
148 | ||
149 | // UTF-8 hack: http://php.net/manual/en/domdocument.loadhtml.php#95251 |
|
150 | $xmlHackUsed = false; |
|
151 | /** @noinspection StringFragmentMisplacedInspection */ |
|
152 | if (\stripos('<?xml', $xml) !== 0) { |
|
153 | $xmlHackUsed = true; |
|
154 | $xml = '<?xml encoding="' . $this->getEncoding() . '" ?>' . $xml; |
|
155 | } |
|
156 | ||
157 | $this->document->loadXML($xml, $optionsXml); |
|
158 | ||
159 | // remove the "xml-encoding" hack |
|
160 | if ($xmlHackUsed) { |
|
161 | foreach ($this->document->childNodes as $child) { |
|
162 | if ($child->nodeType === \XML_PI_NODE) { |
|
163 | /** @noinspection UnusedFunctionResultInspection */ |
|
164 | $this->document->removeChild($child); |
|
165 | ||
166 | break; |
|
167 | } |
|
168 | } |
|
169 | } |
|
170 | } |
|
171 | ||
172 | // set encoding |
@@ 350-372 (lines=23) @@ | ||
347 | } |
|
348 | } |
|
349 | ||
350 | if ($documentFound === false) { |
|
351 | ||
352 | // UTF-8 hack: http://php.net/manual/en/domdocument.loadhtml.php#95251 |
|
353 | $xmlHackUsed = false; |
|
354 | /** @noinspection StringFragmentMisplacedInspection */ |
|
355 | if (\stripos('<?xml', $html) !== 0) { |
|
356 | $xmlHackUsed = true; |
|
357 | $html = '<?xml encoding="' . $this->getEncoding() . '" ?>' . $html; |
|
358 | } |
|
359 | ||
360 | $this->document->loadHTML($html, $optionsXml); |
|
361 | ||
362 | // remove the "xml-encoding" hack |
|
363 | if ($xmlHackUsed) { |
|
364 | foreach ($this->document->childNodes as $child) { |
|
365 | if ($child->nodeType === \XML_PI_NODE) { |
|
366 | /** @noinspection UnusedFunctionResultInspection */ |
|
367 | $this->document->removeChild($child); |
|
368 | ||
369 | break; |
|
370 | } |
|
371 | } |
|
372 | } |
|
373 | } |
|
374 | ||
375 | // set encoding |