- var_dump: documentation ( source)
<?php
$a = '<var>One</var> <var>Two</var>'; // Works fine
($domA = new DOMDocument('1.0', 'UTF-8'))->loadHTML($a);
foreach ((new DOMXPath($domA))->query('//var') as $var) {
$var->replaceWith($domA->createElement('p', $var->nodeValue));
}
var_dump($domA->saveHTML());
$b = '<var>One</var><var>Two</var>'; // Causes a 'double free' error
($domB = new DOMDocument('1.0', 'UTF-8'))->loadHTML($b);
foreach ((new DOMXPath($domB))->query('//var') as $var) {
$var->replaceWith($domB->createElement('p', $var->nodeValue));
}
var_dump($domB->saveHTML());