Example #1
0
        for ($i = 0; $i < $num_at; $i = $i + 2) {
            if ($clean_post[$at_keys[$i]] != '') {
                $j = $i + 1;
                $nodes['@attributes'][$clean_post[$at_keys[$i]]] = $clean_post[$at_keys[$j]];
                unset($clean_post[$at_keys[$i]]);
            }
        }
        $cont = 1;
        foreach ($nodes_keys as $k => $v) {
            if (preg_match("/^clone/", $v) == false) {
                $child_node = getChild($child, $v);
                $nodes[$cont - 1][$child_node['node']] = set_new_lk($child_node['tree'], $child_node['tree']['@attributes'][$_level_key_name], $__level_key . "_" . $cont);
            } else {
                $key = preg_replace("/clone###/", "", $v);
                $child_node = getChild($child, $key);
                $nodes[$cont - 1][$child_node['node']] = set_new_lk($child_node['tree'], $child_node['tree']['@attributes'][$_level_key_name], $__level_key . "_" . $cont);
            }
            $cont++;
        }
        $ok = eval("\$tree{$branch}=\$nodes;");
        break;
}
if ($ok === false) {
    echo "2###" . _("Failure to update XML File") . " (2)";
    $error = true;
} else {
    $xml = new xml($_level_key_name);
    $output = $xml->array2xml($tree);
    $output = formatOutput($output, $_level_key_name);
    $output = utf8_decode($output);
    if (@file_put_contents($path, $output, LOCK_EX) === false) {
Example #2
0
function set_new_lk($tree, $lk, $new_lk)
{
    $_level_key_name = $_SESSION['_level_key_name'];
    $pattern = "/{$lk}/";
    if (is_array($tree)) {
        foreach ($tree as $k => $v) {
            if ($k === '@attributes') {
                $tree[$k][$_level_key_name] = preg_replace($pattern, $new_lk, $v[$_level_key_name]);
            } else {
                $tree[$k] = set_new_lk($tree[$k], $lk, $new_lk);
            }
        }
    }
    return $tree;
}