'en' ]. Invalid lines are skipped. * * @param string $text Raw text. * @return array */ public static function parse_country_map( $text ) { $map = array(); foreach ( preg_split( '/\R/', (string) $text ) as $line ) { $parts = array_map( 'trim', explode( '=', $line, 2 ) ); if ( 2 !== count( $parts ) ) { continue; } $cc = strtoupper( $parts[0] ); $lang = strtolower( $parts[1] ); if ( self::is_valid_country( $cc ) && self::is_valid_code( $lang ) ) { $map[ $cc ] = $lang; } } return $map; } }