Как обновить CDATA (PHP)

Чтобы обновить CDATA-элемент в XML файле, нужно сперва найти элемент, затем операцией присвоения задать нужный текст.

Пример

Например есть XML-файл, у которого есть тег <![CDATA[Some text...]]>. Так же есть файл с HTML-формой и текстовым полем, при отправке данных, текст попадает в XML-файл, в тег <![CDATA[Some text...]]>.

Смотреть пример онлайн

<?php $XML = new DOMDocument(); $XML->load('file.xml'); $XML_text = $XML->getElementsByTagName('text')->item(0); if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['CDATA'])) { $XML_text->firstChild->nodeValue = $_POST['CDATA']; $XML->save('file.xml'); header('Location: ./?r='.rand(10,100)); } elseif (isset($_GET['r'])) { header('Location: ./'); } $text = $XML_text->firstChild->nodeValue; ?><!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Как обновить CDATA (PHP)</title> </head> <body> <p><a href="file.xml" target="_blank">file.xml</a></p> <form method="post" action="./"> <div><textarea name="CDATA" style="width:600px; height:200px;"><?=$text?></textarea></div> <div><input type="submit" value="Обновить CDATA"></div> </form> </body> </html>

Категории

ПрограммированиеPHPXML в PHP

Читайте также

Комментарии