gpt4 book ai didi

php - 通过 SimpleXML PHP 编辑 XML 节点

转载 作者:行者123 更新时间:2023-12-03 23:46:13 25 4
gpt4 key购买 nike

我知道类似的问题已经被问过好几次了,但我找不到以下问题的解决方案:

我有一个简单的 XML 文件:服务器.xml

<servers>

<server>
<name> Google </name>
<address>http://www.google.com</address>
</server>

<server>
<name> Yahoo </name>
<address>http://www.yahoo.com</address>
</server>

<server>
<name> Bing </name>
<address>http://www.bing.com</address>
</server>

</servers>

现在,我正在尝试获取 <server>例如名称为“Google”的节点,然后更改地址标签。我不知道如何使用 SimpleXML 来处理它。因此,示例场景如下:

  1. 获取服务器对象/数组,其中 $serverName = "Google"
  2. 将服务器的地址字段编辑为不同的内容,例如 http://www.google.co.uk
  3. 将更改写回 XML 文件。

如有任何帮助,我们将不胜感激。

最佳答案

  1. 获取 $serverName = "Google"的服务器对象/数组

    // An array of all <server> elements with the chosen name
    $googles = $servers->xpath('server[name = " Google "]');
  2. 将服务器的地址字段编辑为不同的内容,例如 http://www.google.co.uk

    //Find a google and change its address
    $google->address = 'http://www.google.co.uk';
  3. 将更改写回 XML 文件。

    $servers->saveXML('path/to/file.xml');

完整示例

$servers = simplexml_load_file('path/to/file.xml');
$googles = $servers->xpath('server[name=" Google "]');
foreach ($googles as $google) {
$google->address = 'http://www.google.co.uk';
}
$servers->saveXML('path/to/file.xml');

更多信息

关于php - 通过 SimpleXML PHP 编辑 XML 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17658197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com