通过 PHP 从目录中的文件生成 XML

2024-03-03

我有两个文件夹图像和带照片的大图像。

我想生成一个具有两个属性的 XML 文件,如下所示:

<images>
    <image source="images/image1" lightbox="bigimages/image1" />
    .....
</images>

我有这样的东西:

<?php

    // enter the path to the folder
    $path = "images/";


    // opendir
    $dir_handle = @opendir($path) or die("Unable to open $path");

    // table photos
    $filetypes = array("jpg", "png");

    // forming xml
    $doc = new DomDocument('1.0');


    $doc->formatOutput = true;

    // forming images

    $root = $doc->createElement('images');
    $root = $doc->appendChild($root);

    while ($file = readdir($dir_handle)) {


        $file = rawurlencode($file);

        $split = explode(".", $file);
        $ext = strtolower($split[count($split)-1]);


        if (in_array($ext, $filetypes)) {

            // additional image
            $item = $doc->createElement("image");
            $item = $root->appendChild($item);


            $file = $path.$file;

            // adding an attribute source
            $item->setAttribute('source', $file);


        }


    }




    // closure
    closedir($dir_handle);

    // Save to XML
    $doc->save("plik.xml");
    echo "plik xml wygenerowany poprawnie!!!";
?>

现在的问题是如何添加第二个属性以及“bigimages”目录中图像的路径。


这应该可以做到:

$big_image = 'bigimages/' . basename($file);

if (file_exists($big_image)) {
    $item->setAttribute('source', $big_image);
}

也可以看看:基本名称() http://www.php.net/basename

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 PHP 从目录中的文件生成 XML 的相关文章

  • 简单的 Xml - 元素的顺序未保留?

    我在我的 Android 应用程序中使用 SimpleXml 2 6 1 尽管文档 http simple sourceforge net download stream doc javadoc index html org simplef
  • PHPExcel下载文件

    我想下载使用 PHPExcel 生成的 Excel 文件 我按照以下代码PHPExcel 强制下载问题 https stackoverflow com questions 26265108 phpexcel force download i
  • 在会话 cookie 中存储大量数据会产生什么影响?

    谁能解释一下在会话中存储大量数据的缺点或给我指出一些阅读材料 我也很感兴趣在会话中存储数据和从数据文件读取数据之间是否有任何区别 如果您在会话中存储大量数据 则输入 输出性能会下降 因为会有大量读取 写入 默认情况下 PHP 中的会话存储在
  • 关于加拿大短信网关提供商的建议[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我很好奇 如果我能够接受传入的短信到某个号码 然后将其传递给 PHP 中的服务器端应用程序 会带来多少麻烦 金钱 我最终会通过电子邮件地址发回短信 有
  • Booking.com酒店管理API

    我拥有一家酒店 并在 booking com 上查看了 API 因为我想创建自己的前端界面来更新我的酒店房价 房间数 以及通过该 API 上传图片 更新酒店描述 然而 我唯一能找到的是一个 API 供联营公司以一定的价格获取特定位置的酒店等
  • 重复使用相同的卷曲手柄。性能大幅提升?

    在 PHP 脚本中 我对不同的 URL 执行了许多不同的curl GET 请求 一百个 将重复使用来自curl init提高性能 还是与请求的响应时间相比可以忽略不计 我这么问是因为在当前的架构中保持相同的句柄并不容易 交叉发布自我应该关闭
  • session_regenerate_id 没有创建新的会话 id

    我有一个脚本 旨在完成当前会话并开始新的会话 我使用了一段代码 它在我的开发计算机上运行良好 但是 当我将其发布到生产服务器时 会话 ID 始终保持不变 以下是我重新启动会话的代码 session start SESSION array P
  • php - 我应该加密电子邮件地址吗?

    当用户注册时 我应该将他们的电子邮件按原样存储在数据库中还是对其进行哈希处理 我希望稍后能够解密 那么我应该使用 md5 吗 谢谢你 No md5 is 单向哈希函数 http en wikipedia org wiki Cryptogra
  • 将 transaction.commit_manually() 升级到 Django > 1.6

    我继承了为 Django 1 4 编写的应用程序的一些代码 我们需要更新代码库以使用 Django 1 7 并最终更新到 1 8 作为下一个长期支持版本 在一些地方它使用旧风格 transaction commit manually and
  • 使用日语“Enter”键进行搜索功能

    我在日语方面遇到了问题 我有一个允许用户搜索数据的表单 当用户输入要搜索的字符串并按 Enter 键时 搜索功能就会执行 我的代码是 formSearch input keyup function event var key event c
  • Android GCM 服务器的 API 密钥

    我有点困惑我应该为 GCM 服务器使用哪个 API 密钥 在文档中它说使用 android api 密钥 这对我不起作用并且总是给出未经授权的 http developer android com google gcm gs html ht
  • 在 Woocommerce 购物车中设置最小小计金额

    我正在尝试将最低订单金额设置为 25 美元 到目前为止 我找到了这段代码 如果未达到最低限度 它似乎可以阻止结账 但它使用的小计包含税费 我需要在总计中排除税费 add action woocommerce checkout process
  • 通过JS Laravel访问存储目录

    有没有办法访问storage目录 该目录已经链接到publicJS 中的目录 我正在尝试制作一个上传图片的表单 验证脚本 if request gt hasFile photos marker gt photos request gt ph
  • 删除Android所有语言中的字符串

    我有一个包含多个翻译的应用程序 我想删除一些字符串 我怎样才能重构并删除它们一次 例如在默认情况下strings xml文件并自动将删除传播到其他翻译的其他 strings xml 文件 您可以通过 Android Studio 中的 翻译
  • 如何在php中使用preg添加html属性

    我正在寻找在 php 中编写一个脚本来扫描 html 文档并根据它找到的内容向元素添加新标记 更具体地说 我是扫描文档并为每个元素搜索CSS标记 float right left 如果找到它 它会添加align right left 基于它
  • php 表单提交 - Q2

    我对这个虚拟问题感到抱歉 这是我的简单 PHP 表单 其中包含两个 SQL 表和 ADD 提交 按钮 我希望将人员从 Test1 转移到 Test2 很多事情都很好 只有提交按钮不起作用 因此 Test2 表没有反馈 Revised 现在提
  • Zend Framework Zend_Form 装饰器: 位于按钮元素内部?

    我有一个像这样创建的按钮元素 submit new Zend Form Element Button submit submit gt setLabel My Button submit gt setDecorators array Vie
  • php下拉菜单人口

    我正在尝试编写一个 php 脚本 该脚本将根据主下拉菜单的选择填充第二个下拉菜单 我想使用 jquery 来完成所有非页面刷新的事情 但我发现现有的所有东西都很难理解和修改 你知道有什么写得很好且易于理解的东西吗 或者可能是现有的教程 下面
  • 如何在Android中解析xml类型的HTTPResponse

    我有一个 Android 应用程序 我使用 POST 方法来获取响应 这是我的代码 HttpResponse httpResponse httpclient execute httppost HttpEntity resEntity htt
  • 文件修改时间检查的成本

    对于Linux下包含少量字节的文件 我只需要处理自上次处理以来发生更改的时间 我通过调用 PHP 检查文件是否被更改clearstatcache filemtime 定期 由于整个文件总是很小 因此删除对 filemtime 的调用并通过将

随机推荐

  • 变量应该是侦听器内部的最终变量[重复]

    这个问题在这里已经有答案了 可能的重复 无法引用在不同方法中定义的内部类内的非最终变量 https stackoverflow com questions 1299837 cannot refer to a non final variab
  • 在Force布局中向d3节点添加文本标签

    这是我的代码 你也可以有完整的代码JsFiddle https jsfiddle net ShuanWu 7pvhxfzg 我想在每个节点上都有标签 但我不能 顺便说一句 标签可以嵌入到圆圈中console https i stack im
  • 根据选项卡内容调整 QTabWidget 大小的问题(PyQT)

    我知道提供了一些关于 QTabWidget 调整大小的答案 Link 1 https stackoverflow com questions 28710003 force qt pyqt pyside qtabwidget to resiz
  • TextRenderer.MeasureText 结果的准确性

    调用 TextRenderer MeasureText 如下 TextRenderer MeasureText myControl Text myControl Font 并将结果与 控件的大小进行比较以检查文本是否适合 结果有时不正确 观
  • 使用 JavaScript 和 Google Gears 处理文件上传,有更好的解决方案吗?

    所以 我已经使用这种文件上传方法一段时间了 但 Google Gears 对实现 HTML5 规范的较新浏览器的支持似乎很差 我听说过这个词已弃用 https stackoverflow com questions 2292160浮动在几个
  • 使用 Pyspark 从关系数据集构建层次结构

    我是 Python 新手 一直致力于从关系数据集构建层次结构 如果有人知道如何进行此操作 那将有巨大的帮助 我有一个关系数据集 其中包含如下数据 currentnode childnode root child1 child1 leaf2
  • Symfony2 表单中实体字段类型的附加属性

    在Symfony2中 有没有一种方法可以将更多字段从实体映射到从基于实体的表单生成的选择下拉列表的选项标签 我目前有类似的东西 builder gt add creditcard entity array label gt Credit C
  • 如何正确地将 C 程序拆分为文件并包含?

    我组织了我的程序 将每个实体拆分在自己的文件中 是这样的 main c include student h include subject h include classroom h define PI 3 14 int sum int a
  • 将音频从 Android 设备流式传输到另一设备

    我如何通过互联网将音频从一台设备流式传输到另一台设备 我知道使用 Java 套接字发送基本数据 但想知道如何 在文件中途开始流式传输 例如 在歌曲的中间 发送的数据需要什么格式 MediaPlayer可以将url作为数据源 那么音频从服务器
  • 将光标移动到输入字段的开头?

    当您在 Stackoverflow 中点击 提问 时 您会看到一条文字 您的编程问题是什么 请描述一下 我想要同样的事情 我所需要做的就是将光标移动到文本字段的开头 我如何用 jquery 做到这一点 这可能有点过分了 但这些函数对于选择输
  • 从多个因子列生成虚拟矩阵

    我已经在网上搜索过 但没有找到答案 我有一个包含多列的大 data frame 每列都是一个因子变量 我想转换 data frame 使得因子变量的每个可能值都是一个变量 如果该变量存在于因子列中 则该变量包含 1 否则包含 0 这是我的意
  • Random 类线程安全吗?

    共享一个实例是否有效Random多线程之间的类 并打电话nextInt int 特别是来自多个线程 它是线程安全的 因为当多个线程使用时它仍然会生成随机数 Sun Oracle JVM 实现使用synchronized 和AtomicLon
  • 如何使用 Flask 获取页面访问者的 Windows 用户名?

    我到处搜索过 但没有找到任何结果 所以很抱歉 如果这篇文章是骗人的 我找不到任何东西 我为我的公司编写了这个相当广泛的网络应用程序 唯一剩下的就是添加某种审核 我不知道如何捕获当前访问我的页面的人的用户名 由于托管的盒子是以管理员身份登录的
  • 使用 PDFMake 嵌套/子表

    如何在 PDFmake 中使用嵌套 子表 我尝试过简单地放入多个表格 但这不会自动重复顶级表格的标题以进行分页符 此代码是使用子表的简化示例 它改编自 pdfmake Playground 的表格部分 通过 Google 搜索不容易找到 将
  • Djangocms 中的自定义视图?

    我还没有找到令人满意的方法 我有一个运行良好的 djangocms 设置 但我需要将 CMS 外部表格中的内容添加到我的主页 并在模板上呈现该内容 我可以做到这一点 但在 CMS 中编辑 urls py 以使用我的视图 如下所示 url r
  • 我可以使用 conda 安装 Python 的 alpha 或 beta 版本吗?

    在撰写本文时 alpha 版本3 8 0a4python 可用 我想在正式发布之前在 conda 环境中进行一些测试 出于教育目的并满足一些好奇心 当尝试 conda install 3 8 时 我得到了PackagesNotFoundEr
  • 为什么 stylelint vscode 扩展在我的计算机上不起作用?

    我遵循guide https marketplace visualstudio com items itemName stylelint vscode stylelint安装stylelintvscode 扩展 但它在我的电脑上不起作用 我
  • 在R中查找另一个字符串中的一个字符串

    我想在R中的另一个字符串中查找一个字符串 字符串如下 我希望能够将字符串 a 与字符串 b 匹配 输出应该是a b返回 TRUE a lt 6250 7250 6251 b lt 7250 a b FALSE 您可以使用regmatches
  • D3:在多条线的折线图中跳过空值

    我有一个动态数组来显示包含多条线的折线图 例子 var data x 2005 y 100 x 2007 y 96 5 x 2009 y 100 3 x 2011 y 102 3 x 2005 y 100 x 2007 y 105 x 20
  • 通过 PHP 从目录中的文件生成 XML

    我有两个文件夹图像和带照片的大图像 我想生成一个具有两个属性的 XML 文件 如下所示