parse($file); // If SimpleXML succeeds or this is an invalid WXR file then return the results if (!is_wp_error($result) || 'SimpleXML_parse_error' != $result->get_error_code()) return $result; } else if (extension_loaded('xml')) { $parser = new WXR_Parser_XML; $result = $parser->parse($file); // If XMLParser succeeds or this is an invalid WXR file then return the results if (!is_wp_error($result) || 'XML_parse_error' != $result->get_error_code()) return $result; } // We have a malformed XML file, so display the error and fallthrough to regex if (isset($result) && defined('IMPORT_DEBUG') && IMPORT_DEBUG) { echo '
';
            if ('SimpleXML_parse_error' == $result->get_error_code()) {
                foreach ($result->get_error_data() as $error)
                    echo $error->line . ':' . $error->column . ' ' . esc_html($error->message) . "\n";
            } else if ('XML_parse_error' == $result->get_error_code()) {
                $error = $result->get_error_data();
                echo $error[0] . ':' . $error[1] . ' ' . esc_html($error[2]);
            }
            echo '
'; echo '

' . __('There was an error when reading this WXR file', 'wpmf') . '
'; echo __('Details are shown above. The importer will now try again with a different parser...', 'wpmf') . '

'; } // use regular expressions if nothing else available or this is bad XML $parser = new WXR_Parser_Regex; return $parser->parse($file); } }