Open Journal Systems
3.3.0
IdnAddressEncoder.php
1
<?php
2
3
/*
4
* This file is part of the Symfony package.
5
*
6
* (c) Fabien Potencier <fabien@symfony.com>
7
*
8
* For the full copyright and license information, please view the LICENSE
9
* file that was distributed with this source code.
10
*/
11
12
namespace
Symfony\Component\Mime\Encoder
;
13
14
use
Symfony\Component\Mime\Exception\AddressEncoderException
;
15
27
final
class
IdnAddressEncoder
implements
AddressEncoderInterface
28
{
34
public
function
encodeString
(
string
$address): string
35
{
36
$i = strrpos($address,
'@'
);
37
if
(
false
!== $i) {
38
$local = substr($address, 0, $i);
39
$domain = substr($address, $i + 1);
40
41
if
(preg_match(
'/[^\x00-\x7F]/'
, $local)) {
42
throw
new
AddressEncoderException
(sprintf(
'Non-ASCII characters not supported in local-part os "%s".'
, $address));
43
}
44
45
if
(preg_match(
'/[^\x00-\x7F]/'
, $domain)) {
46
$address = sprintf(
'%s@%s'
, $local, idn_to_ascii($domain, 0, INTL_IDNA_VARIANT_UTS46));
47
}
48
}
49
50
return
$address;
51
}
52
}
Symfony\Component\Mime\Encoder\IdnAddressEncoder
Definition:
IdnAddressEncoder.php:27
Symfony\Component\Mime\Encoder
Definition:
AddressEncoderInterface.php:12
Symfony\Component\Mime\Encoder\IdnAddressEncoder\encodeString
encodeString(string $address)
Definition:
IdnAddressEncoder.php:34
Symfony\Component\Mime\Exception\AddressEncoderException
Definition:
AddressEncoderException.php:17
Symfony\Component\Mime\Encoder\AddressEncoderInterface
Definition:
AddressEncoderInterface.php:19
plugins
paymethod
paypal
vendor
symfony
mime
Encoder
IdnAddressEncoder.php
Generated on Fri Aug 28 2020 14:52:10 for Open Journal Systems by
1.8.17