Una soluzione potrebbe essere quella di specializzare la classe SimpleXMLElement:
Codice PHP:
<?php
class MySimpleXMLElement extends SimpleXMLElement {
public function addCData($name, $value = NULL) {
$child = $this->addChild($name);
if ($child !== NULL) {
$node = dom_import_simplexml($child);
$ownerDocument = $node->ownerDocument;
$node->appendChild($ownerDocument->createCDATASection($value));
}
return $child;
}
}
$id = 1;
$codice_cliente = 1;
$id_cliente = 1;
$ragione_sociale = "ragione sociale";
$xml = new MySimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><DocumentElement></DocumentElement>');
$user = $xml->addChild('ordini');
$user->addChild('id_ordine', $id);
$user->addChild('codice_cliente', $codice_cliente);
$user->addChild('id_cliente', $id_cliente);
$user->addCData('ragione_sociale', $ragione_sociale);
echo $xml->asXML();
?>