Index: src/wp-includes/compat.php
===================================================================
--- src/wp-includes/compat.php	(revision 43182)
+++ src/wp-includes/compat.php	(working copy)
@@ -520,7 +520,11 @@
 	 * @return bool True if `$var` is countable, false otherwise.
 	 */
 	function is_countable( $var ) {
-		return ( is_array( $var ) || $var instanceof Countable );
+		return ( is_array( $var )
+			|| $var instanceof Countable
+			|| $var instanceof SimpleXMLElement
+			|| $var instanceof ResourceBundle
+		);
 	}
 }
 
Index: tests/phpunit/tests/compat.php
===================================================================
--- tests/phpunit/tests/compat.php	(revision 43182)
+++ tests/phpunit/tests/compat.php	(working copy)
@@ -188,6 +188,8 @@
 	}
 
 	/**
+	 * Test that is_countable() is always available (either from PHP or WP).
+	 *
 	 * @ticket 43583
 	 */
 	function test_is_countable_availability() {
@@ -200,9 +202,12 @@
 	 * @ticket 43583
 	 *
 	 * @dataProvider countable_variable_test_data
+	 *
+	 * @param mixed $variable     Variable to check.
+	 * @param bool  $is_countable The expected return value of PHP 7.3 is_countable() function.
 	 */
 	function test_is_countable_functionality( $variable, $is_countable ) {
-		$this->assertEquals( is_countable( $variable ), $is_countable );
+		$this->assertSame( is_countable( $variable ), $is_countable );
 	}
 
 	/**
@@ -232,6 +237,31 @@
 	}
 
 	/**
+	 * Test is_countable() polyfill for ResourceBundle.
+	 *
+	 * @ticket 43583
+	 */
+	function test_is_countable_ResourceBundle() {
+		if ( ! class_exists( 'ResourceBundle' ) ) {
+			$this->markTestSkipped( 'The intl extension is not loaded. ResourceBundle not tested for is_countable().' );
+		}
+
+		$this->assertTrue( is_countable( new ResourceBundle( 'en', null ) ) );
+	}
+
+	/**
+	 * Test is_countable() polyfill for SimpleXMLElement.
+	 *
+	 * @ticket 43583
+	 */
+	function test_is_countable_SimpleXMLElement() {
+		if ( ! class_exists( 'SimpleXMLElement' ) ) {
+			$this->markTestSkipped( 'The xml extension is not loaded. SimpleXMLElement not tested for is_countable().' );
+		}
+
+		$this->assertTrue( is_countable( new SimpleXMLElement( '<xml><tag>1</tag><tag>2</tag></xml>' ) ) );
+	}
+	/**
 	 * @ticket 43619
 	 */
 	function test_is_iterable_availability() {
