PHP SimpleXML:编辑节点及其属性


PHP-SimpleXML: Editing nodes and its attributes

在PHP脚本中,我想要编辑节点及其属性。

<config>
    <Week>
        <Monday from="18:00:00" to="8:00:00">true</Monday>
        <Tuesday from="18:00:00" to="8:00:00">true</Tuesday>
</Week></config>

foreach ($config->Week->children() as $day){
    $day = $_POST["b_".$day];
    $day['from'] = $_POST[$day."_from"];
    $day['to'] = $_POST[$day."_to"];
}

这似乎不起作用。但是是这样做的

$config->Week->Monday = $_POST['b_Monday'];
$config->Week->Monday['from'] = $_POST['Monday_from'];
$config->Week->Monday['to'] = $_POST['Monday_to'];

有没有什么方法可以在循环中做到这一点,这样我就不必硬编码节点名称了?

从天更改为&日

foreach ($config->Week->children() as &$day){

但是,下一个是更好的

$children = $config->Week->children();
foreach ($children as &$day) {
        :
        :
}
$config->Week->setChildren($children); // setter

它可以不是很多英语,但我会流传下来吗?