【问题标题】:How to display php output as xml如何将php输出显示为xml
【发布时间】:2011-07-28 17:24:19
【问题描述】:

我有一个简单的 php,它输出目录中所有 png 文件的列表。有没有办法把这个列表变成xml?

<?php
foreach (glob("*.png") as $filename) {
    echo "$filename " ;
}
?>

【问题讨论】:

    标签: php xml glob


    【解决方案1】:

    取决于您想要的 XML 格式。这会起作用:

    <?xml version="1.0" encoding="UTF-8"?>
    <?php
    foreach (glob("*.png") as $filename) {
        echo "<png>$filename</png>";
    }
    ?>
    

    【讨论】:

    • 我不是php程序员所以我不确定,但是如果php中有xml对象,最好使用它而不是字符串。该对象通常会负责编码,例如,如果 $filename 包含 和 & 那些需要编码或 xml 无效。
    • 别忘了把代码放在第一行:header ("Content-Type:text/xml");
    • @aephous:echo '&lt;png&gt;', htmlspecialchars($filename), '&lt;/png&gt;';。通过 dom 操作生成 XML 是一个主要的痛苦。对文本进行适当处理的直接字符串输出要容易得多。
    【解决方案2】:

    手动渲染?

    <?php
    $xmlStr = '<?xml version="1.0" ?><directory>';
    
    foreach (glob("*.png") as $filename) {
        $xmlStr .= '<file>' . $filename . '</file>';
    }
    $xmlStr .= '</directory>';
    
    header('Content-type: text/xml');
    echo $xmlStr;
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-10
      • 2013-09-11
      • 2013-07-30
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多