我正在尝试使用以下代码创建xml文件:
$xmlfile='template.xml';
$xml = simplexml_load_file($xmlfile);
$xml->asXML('12801.xml');
而template.xml文件包含:
<?xml version="1.0" standalone="yes"?>
<posts>
<1president/>
<2vice-president/>
<3secretary/>
<4assistant-secretary/>
<5science-secretary/>
<6dramatic-secretary/>
<7athletic-secretary/>
</posts>
它引发了很多错误:
Warning: simplexml_load_file(): template.xml:3: parser error : StartTag: invalid element name in try.php on line 3
这里有什么问题?我知道,template.xml中的xml似乎是有效的。
答案 0 :(得分:4)
XML标记不能以数字开头。它应始终以下列字符之一开头:
[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]
这样的事情应该有效:
<posts>
<president/>
<vice-president/>
<secretary/>
<assistant-secretary/>
<science-secretary/>
<dramatic-secretary/>
<athletic-secretary/>
</posts>
您可以使用在线XML验证程序(例如this one。
)轻松验证这一点