PHP DOM createElement - 允许空格

时间:2010-10-18 07:24:05

标签: php xml dom

如何在创建xml文件时在createElement中使用空格

我必须使用

$main = $doc->createElement("$cname"."Data" );

其中

$cname="Company Name"

但是由于$cname中的空格,我收到以下错误,

  

致命错误:未捕获的异常   'DOMException',消息'无效   file.php中的字符错误':50 Stack   trace:#0 file.php(50):   上一层>的createElement('Geosoft软件   公司...')#1 {main}投入   第50行的file.php

如何纠正这个问题?

此致 雷卡

1 个答案:

答案 0 :(得分:5)

根据http://www.w3.org/TR/2008/REC-xml-20081126/#NT-NameChar,元素名称只能包含以下字符

NameStartChar :: =“:”| [A-Z] | “_”| [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]

NameChar :: = NameStartChar | “ - ”| “” | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040]

可能的选择:

$main = $doc->createElement("Data");
$main->setAttribute('origin', $cname);

您可能也对xml namespaces

感兴趣