Alert: This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.

WP_oEmbed::_parse_xml_body( string $response_body ): stdClass|false

Serves as a helper function for parsing an XML response body.


Parameters

$response_body string Required

Top ↑

Return

stdClass|false


Top ↑

Source

File: wp-includes/class-wp-oembed.php. View all references

private function _parse_xml_body( $response_body ) {
	if ( ! function_exists( 'simplexml_import_dom' ) || ! class_exists( 'DOMDocument', false ) ) {
		return false;
	}

	$dom     = new DOMDocument;
	$success = $dom->loadXML( $response_body );
	if ( ! $success ) {
		return false;
	}

	if ( isset( $dom->doctype ) ) {
		return false;
	}

	foreach ( $dom->childNodes as $child ) {
		if ( XML_DOCUMENT_TYPE_NODE === $child->nodeType ) {
			return false;
		}
	}

	$xml = simplexml_import_dom( $dom );
	if ( ! $xml ) {
		return false;
	}

	$return = new stdClass;
	foreach ( $xml as $key => $value ) {
		$return->$key = (string) $value;
	}

	return $return;
}


Top ↑

Changelog

Changelog
Version Description
3.6.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.