Xml中的特殊字符

Xml中的特殊字符,xml,special-characters,Xml,Special Characters,我必须从Mysql数据库开始创建一个Xml文件。我正在使用php脚本生成xml文件。 下面是我用来生成xml文件的php代码部分: // create a new XML document $doc = new DomDocument('1.0', 'UTF-8'); // create root node $root = $doc->appendChild($doc->createElement('rss')); $root->setAttribute('version',

我必须从Mysql数据库开始创建一个Xml文件。我正在使用php脚本生成xml文件。 下面是我用来生成xml文件的php代码部分:

// create a new XML document
$doc = new DomDocument('1.0', 'UTF-8');

// create root node
$root = $doc->appendChild($doc->createElement('rss'));
$root->setAttribute('version', '2.0');
$root->setAttribute('encoding', 'UTF-8');

// create children
while($row = mysql_fetch_assoc($result)) {
   // add node for each row
  $occ = $doc->createElement('item');
  $occ = $channelNode->appendChild($occ);


  // add a child node for each field

  foreach ($row as $fieldname => $fieldvalue) {


        if($fieldname =='description')   {

          $newcdata=$doc->createCDATASection($fieldvalue);
          $child = $doc->createElement($fieldname);
          $child = $occ->appendChild($child);
          $value = $doc->createTextNode($fieldvalue);
          $value = $child->appendChild($newcdata);
        }
        else {
          $child = $doc->createElement($fieldname);
          $child = $occ->appendChild($child);
          $value = $doc->createTextNode($fieldvalue);
          $value = $child->appendChild($value);
        }



      } // foreach

} // while

这个计划运作良好。问题发生在数据库中有特殊字符要插入XML文件的地方,在本例中,我尝试使用
CDATA
插入数据,但它不起作用。那么,如何在Xml文件中插入特殊字符呢

无法插入到XML文档中。解决办法是让发送方和接收方就如何编码达成一致。常见的选项包括Base64和asci85


也可以进行简单的字符替换,例如使用Unicode控件图片。例如␀ 对于\0和␇ 对于\b。这使其具有可读性,但仍需要发送方和接收方达成一致。

“不工作”不是一个问题描述。会发生什么?这是关于什么“特殊人物”的?