You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
/* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */
namespace Symfony\Component\Mime\Header;
use Symfony\Component\Mime\Address; use Symfony\Component\Mime\Exception\RfcComplianceException;
/** * A Mailbox MIME Header for something like Sender (one named address). * * @author Fabien Potencier <fabien@symfony.com> */ final class MailboxHeader extends AbstractHeader { private $address;
public function __construct(string $name, Address $address) { parent::__construct($name);
$this->setAddress($address); }
/** * @param Address $body * * @throws RfcComplianceException */ public function setBody($body) { $this->setAddress($body); }
/** * @throws RfcComplianceException */ public function getBody(): Address { return $this->getAddress(); }
/** * @throws RfcComplianceException */ public function setAddress(Address $address) { $this->address = $address; }
public function getAddress(): Address { return $this->address; }
public function getBodyAsString(): string { $str = $this->address->getEncodedAddress(); if ($name = $this->address->getName()) { $str = $this->createPhrase($this, $name, $this->getCharset(), true).' <'.$str.'>'; }
return $str; }
/** * Redefine the encoding requirements for an address. * * All "specials" must be encoded as the full header value will not be quoted * * @see RFC 2822 3.2.1 */ protected function tokenNeedsEncoding(string $token): bool { return preg_match('/[()<>\[\]:;@\,."]/', $token) || parent::tokenNeedsEncoding($token); } }
|