Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-读取文件夹和子文件夹中的文件并导出为XML文件_Php_Xml_Scandir - Fatal编程技术网

PHP-读取文件夹和子文件夹中的文件并导出为XML文件

PHP-读取文件夹和子文件夹中的文件并导出为XML文件,php,xml,scandir,Php,Xml,Scandir,我明白了 XML分析错误:文档元素后出现垃圾邮件 地点:XXXXXXXX 第2行第1列 代码如下: <?php $xml_generator = new SimpleXMLElement('<data/>'); filesindir('assets/images/'); function filesindir($dirs) { $dirs = scandir($tdir); while ($file = readdir($dirs)) {

我明白了

XML分析错误:文档元素后出现垃圾邮件 地点:XXXXXXXX 第2行第1列

代码如下:

<?php

$xml_generator = new SimpleXMLElement('<data/>');

filesindir('assets/images/');
function filesindir($dirs) {
    $dirs = scandir($tdir);
    while ($file = readdir($dirs)) {
            if (($file == '.')||($file == '..')) {
            } elseif (is_dir($tdir.'/'.$file)) {
                filesInDir($tdir.'/'.$file);
            } else {
                $image = $xml_generator->addChild('image');  
                $image->addChild('name', $file);
            }
    }
}

header("Content-Type: text/xml");
$xml_generator->asXML('data.xml');
echo $xml_generator->asXML();
?>

我做错了什么?

错了这么多。。看起来你复制并合并了这么多代码

试一试

输出

<?xml version="1.0"?>
<data>
  <image>
    <name>a.jpg</name>
    <size>17129</size>
  </image>
  <image>
    <name>a2.jpg</name>
    <size>11100</size>
  </image>
  <image>
    <name>fake.png</name>
    <size>167</size>
  </image>
</data>

出了这么多错。。看起来你复制并合并了这么多代码

试一试

输出

<?xml version="1.0"?>
<data>
  <image>
    <name>a.jpg</name>
    <size>17129</size>
  </image>
  <image>
    <name>a2.jpg</name>
    <size>11100</size>
  </image>
  <image>
    <name>fake.png</name>
    <size>167</size>
  </image>
</data>

您可以发布XML结果源吗?如果文件名包含无效的XML,则必须将子文件作为CDATA追加:您是否使用简单的示例进行了尝试?考虑到子测试集的内容,测试集中的xml字符可能是非法的,例如,如果存在一个可以发布xml结果源的错误,会发生什么?如果文件名包含无效的XML,则必须将子文件作为CDATA追加:您是否使用简单的示例进行了尝试?考虑到子测试集的内容,测试集中的xml字符可能是非法的,例如,如果出现“我使用你的代码并运行我得到的这个XML文件”的问题,会发生什么?XML文件中似乎没有任何与之相关的样式信息。没有更多的问题。我又做错了什么?我为麻烦道歉,我认为你的代码似乎是正确的。我使用scanFiles'assets/images',$xml;设置我的目录,但我从中什么也没有得到。。甚至我的文件夹里也有文件@ปลั๊ก แปดนิ้ว 没关系。。很高兴我能帮上忙OK我终于找到了xml文件正在完全工作。。。我只是不能在php文件上测试它。所以我认为xml的头是罪魁祸首。但我对你的代码还有一个问题。它不读取子文件夹吗?那么,如何读取子文件夹中的文件呢?再次感谢……请继续。那会有很大帮助。非常感谢。我使用了你的代码并运行了我得到的这个XML文件在XML文件中似乎没有任何与之相关的样式信息没有更多的内容我又做错了什么?我为麻烦道歉,我认为你的代码似乎是对的。我使用scanFiles'assets/images',$xml;设置我的目录,但我从中什么也没有得到。。甚至我的文件夹里也有文件@ปลั๊ก แปดนิ้ว 没关系。。很高兴我能帮上忙OK我终于找到了xml文件正在完全工作。。。我只是不能在php文件上测试它。所以我认为xml的头是罪魁祸首。但我对你的代码还有一个问题。它不读取子文件夹吗?那么,如何读取子文件夹中的文件呢?再次感谢……请继续。那会有很大帮助。非常感谢你。