Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. IdnAddressEncoder.php

function IdnAddressEncoder::encodeString

Encodes the domain part of an address using IDN.

Overrides AddressEncoderInterface::encodeString

File

vendor/symfony/mime/Encoder/IdnAddressEncoder.php, line 30

Class

IdnAddressEncoder
An IDN email address encoder.

Namespace

Symfony\Component\Mime\Encoder

Code

public function encodeString(string $address) : string {
    $i = strrpos($address, '@');
    if (false !== $i) {
        $local = substr($address, 0, $i);
        $domain = substr($address, $i + 1);
        if (preg_match('/[^\\x00-\\x7F]/', $domain)) {
            $address = \sprintf('%s@%s', $local, idn_to_ascii($domain, \IDNA_DEFAULT | \IDNA_USE_STD3_RULES | \IDNA_CHECK_BIDI | \IDNA_CHECK_CONTEXTJ | \IDNA_NONTRANSITIONAL_TO_ASCII, \INTL_IDNA_VARIANT_UTS46));
        }
    }
    return $address;
}
RSS feed
Powered by Drupal