php code
<?php
$xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
$xml.="<db_entry id=\"$model->id\" doi=\"$model->identifier\">";
$xml.="<dataset>";
$xml.="</dataset>";
$xml.="</db_entry>";
$xml=preg_replace('/&(?!#?[a-z0-9]+;)/', '&', $xml);
$output= simplexml_load_string($xml);
echo $output->asXML();
当我运行它时,它无法在网页中显示xml格式(显示所有没有xml标签的文本)。 所以我添加了header(),但它显示了XML解析错误:XML或文本声明不在实体的开头。
<?php header("Content-type: text/xml"); ?>
<?php
$xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
$xml.="<db_entry id=\"$model->id\" doi=\"$model->identifier\">";
$xml.="<dataset>";
$xml.="</dataset>";
$xml.="</db_entry>";
$xml=preg_replace('/&(?!#?[a-z0-9]+;)/', '&', $xml);
$output= simplexml_load_string($xml);
echo $output->asXML();
网页显示为空,但在页面查看源中显示
<?xml version="1.0" encoding="UTF-8"?>
<db_entry id="5" doi="110039"><dataset/></db_entry>
并且在开头有三个空行。
答案 0 :(得分:0)
更改此区域
Collections.addAll(lista, lista2); // Join the 2 lists
Collections.shuffle(lista); // shuffle the result list
到
<?php header("Content-type: text/xml"); ?>
<?php
$xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
<强>原因强>
通过在一行中关闭php并在下一行再次打开,您将在输出中写入一行。如您所知,<?php
header("Content-type: text/xml");
$xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
标记之外的内容将直接打印到浏览器。根据XML规则,您不能在<?php ?>
部分之前放置任何内容。