Следующий код успешно сохраняет дочерний div, но также сохраняет некоторые числа в файле в конце. Я думаю, что его байты данных присутствуют, как я могу избавиться от сохраняемых им чисел?
$file = '../userfolders/'.$email.'/'.$ongrassdb.'/'.$pagenameselected.'.php';
$doc = new DOMDocument();
$doc->load($file);
$ele = $doc->createElement('div', $textcon);
$ele ->setAttribute('id', $divname);
$ele ->setAttribute('style', 'background: '.$divbgcolor.'; color :'.$divfontcolor.' ;display : table-cell;');
$element = $doc->getElementsByTagName('div')->item(0);
$element->appendChild($ele);
$doc->appendChild($element);
$myfile = fopen($file, "a+") or die('Unable to open file!');
$html = $doc->save($file);
fwrite($myfile,$html);
fclose($myfile);
Я не хочу использовать saveHTML
или saveHTMLFile
потому что он создает несколько экземпляров div и добавляет к нему html-теги.
$doc->load($file); ... $myfile = fopen($file, "a+") or die('Unable to open file!'); $html = $doc->save($file); fwrite($myfile,$html); fclose($myfile);
Метод $doc->save()
сохраняет дерево DOM в файл и возвращает количество байтов, которые он написал в файл. Этот номер хранится в $html
и затем добавляется к тому же файлу командой fwrite()
.
Просто удалите вызовы fopen()
, fwrite()
и fclose()
.
Я удалил последние две строки и решил проблему
fwrite($myfile,$html);
fclose($myfile);