本文介绍了更改Current Child-SimpleXML PHP的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

设置非常简单。如何使用SimpleXML的Child()迭代函数,然后修改当前节点的值?下面是一个场景:

<Ad>
  <Unit>Value</Unit>
  <Size>Value</Size>
  <Time>Value</Time>
</Ad>

我正在尝试使用Child(),然后将其赋值给当前的Child,以更改上述所有节点中的"Value"。

foreach ($parent->children() as $child){
  $child= "New Value"; // Proper way to access $child's value without overwriting the entire object???
}

提前谢谢!

编辑:我知道您可以简单地执行以下操作:

$parent->Unit = "New Value"; 

我特别想问的是,在使用Child()方法的情况下,如何访问当前子对象的值?

推荐答案

SimpleXMLElement表示单个元素(而不是同名元素的集合)时,索引[0]可以用作自我引用。

写入该自引用使用重载赋值,您可以在其他上下文中使用该赋值来设置节点的文本内容。

所以您要查找的代码非常简单:

foreach ($parent->children() as $child) {
    $child[0] = "New Value";
}

这篇关于更改Current Child-SimpleXML PHP的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-02 07:45