type == XML_ELEMENT_NODE && $node[$i]->tagname == $tag) { $element = $node[$i]; } $i++; } return $element; } function read($app_name) { $filename = "/etc/" . $app_name . ".conf"; if (!is_readable($filename)) { $filename = "/usr/local/etc/" . $app_name . ".conf"; } if (is_readable($filename)) { $this->system = xmldocfile($filename); if ($this->system) { $root = $this->system->root(); if ($root->tagname != $app_name) { print("Configuration error: Wrong configuration file.
"); $this->system = false; } } } else { print("Configuration error: Configuration file for $app_name not found.
"); } } function find_parameter($section, $parameter) { $param_value = ""; if ($this->system) { $root_node = $this->system->root(); $section_node = $this->xmlFindTag($root_node->children(), $section); if ($section_node) { $param_node = $this->xmlFindTag($section_node->children(), $parameter); if ($param_node) { $param_node = $param_node->children(); } if ($param_node && $param_node[0]->type == XML_TEXT_NODE) { $param_value = $param_node[0]->content; } } } return $param_value; } } ?>