Index: wp-includes/compat.php
--- wp-includes/compat.php Base (BASE)
+++ wp-includes/compat.php Locally Modified (Based On LOCAL)
@@ -168,3 +168,41 @@
 	}
 	return $parts;
 }
+
+/**
+ * PHP 4 compat version of array_intersect_key() which was introduced
+ * in PHP 5.0.2. This version requires at least PHP 4.0.0.
+ *
+ * @since WordPress 3.1
+ */
+if ( !function_exists( 'array_intersect_key' ) ) {
+	function array_intersect_key() {
+		$args        = func_get_args();
+		$array_count = count( $args );
+
+		if ( $array_count < 2 ) {
+			user_error( 'Wrong parameter count for array_intersect_key()', E_USER_WARNING );
+			return;
+		}
+
+		// Check arrays
+		for ( $i = $array_count; $i--; ) {
+			if ( !is_array( $args[$i] ) ) {
+				user_error( 'array_intersect_key() Argument #' . ( $i + 1 ) . ' is not an array', E_USER_WARNING );
+				return;
+			}
+		}
+
+		// Intersect keys
+		$arg_keys    = array_map( 'array_keys', $args );
+		$result_keys = call_user_func_array( 'array_intersect', $arg_keys );
+
+		// Build return array
+		$result = array( );
+		foreach ( $result_keys as $key )
+			$result[$key] = $args[0][$key];
+
+		return $result;
+	}
+
+}
