我正在运行以下代码:
$attributes = $xmlTable2->attributes();
foreach ($attributes as $key => $value) {
$xmlTable1->addAttribute($key, $value);
}
但它会导致错误:
Warning: SimpleXMLElement::addAttribute(): Attribute already exists in ... on line 100
Buildfile: /.../vendor/propel/propel1/generator/build.xml
如何覆盖现有属性的值?
答案 0 :(得分:2)
最简单的方法是在要获取其属性的元素上使用属于SimpleXML对象一部分的attributes()函数。
$xmlTable1->elementYouWantAttrsFor->attributes()->attrName = newAttrValue;
或者每个$ xmlTable1元素是否是您想要的
$xmlTable1->attributes()->attrName = newAttrValue;
这是documentation。评论显示了如何做到这一点。