function insert_in_db($tag) { global $array, $idx; $sql = ''; foreach ($array as $key => $data) { if (sqlite_single_query($idx, "SELECT name FROM changelog WHERE name='{$key}'")) { $sql .= "UPDATE changelog SET {$tag}='{$data[1]}' WHERE name='{$key}';"; } else { $sql .= "INSERT INTO changelog (name, {$tag}) VALUES ('{$key}', '{$data[1]}');"; } $sql .= "REPLACE INTO last_seen_values (name, defaultval, permissions) VALUES ('{$key}', '" . sqlite_escape_string(expand_macros($data[0])) . "', '{$data['1']}');"; } if ($sql) { sqlite_query($idx, $sql); } }
unset($idx); // remove bogus ini opt values $bogus = array('pdo.global_value'); foreach ($bogus as $x) { unset($array[$x]); } uksort($array, 'strnatcasecmp'); /* Generate the XML code */ foreach ($array as $entry => $arr) { $oldentry = $entry; /* link entries */ if (isset($links[$entry])) { $entry = '<link linkend="' . $links[$entry] . '">' . $entry . '</link>'; unset($link_files[$oldentry]); } $default = expand_macros($arr[0]); if (preg_match_all('/"([^"]+)"/S', $default, $match) > 1) { $default = '"'; foreach ($match[1] as $add) { $default .= $add; } $default .= '"'; } // replace the @PREFIX@ stuff $default = preg_replace(array('~@PREFIX@~i', '~[\\\\]{2}~'), array('/path/to/php', '/'), $default); /* end of $default stuff */ $permissions = isset($special[$oldentry]) ? '&php.ini; only' : $arr[1]; $info[$oldentry]['default'] = $default; $info[$oldentry]['permissions'] = $permissions; $info[$oldentry]['changelog'] = isset($changelog[$oldentry]) ? $changelog[$oldentry] : ''; $string .= ' <row>' . PHP_EOL . " <entry>{$entry}</entry>" . PHP_EOL . " <entry>{$default}</entry>" . PHP_EOL . " <entry>{$permissions}</entry>" . PHP_EOL . " <entry>{$info[$oldentry]['changelog']}</entry>" . PHP_EOL . ' </row>' . PHP_EOL;