/** * Filter card types for specific country * @param array $configCardTypes * @param string $countryId * @return array */ private function filterCardTypesForCountry(array $configCardTypes, $countryId) { $filtered = $configCardTypes; $countryCardTypes = $this->gatewayConfig->getCountryAvailableCardTypes($countryId); // filter card types only if specific card types are set for country if (!empty($countryCardTypes)) { $availableTypes = array_fill_keys($countryCardTypes, ''); $filtered = array_intersect_key($filtered, $availableTypes); } return $filtered; }