ping()) { * $transport->stop(); * $transport->start(); * } * * The Transport mechanism will be started, if it is not already. * * It is undefined if the Transport mechanism attempts to restart as long as * the return value reflects whether the mechanism is now functional. * * @return bool TRUE if the transport is alive */ public function ping(): bool { return true; } /** * Register a plugin in the Transport. * * @param Swift_Events_EventListener $plugin */ public function registerPlugin(Swift_Events_EventListener $plugin) { } /** * Returns a unified list of all recipients * * @param SimpleMessage $message * @return array */ protected function allRecipients(SimpleMessage $message): array { return array_merge( (array)$message->getTo(), (array)$message->getCc(), (array)$message->getBcc() ); } /** * Returns a concatenated list of mail recipients * * @param SimpleMessage $message * @return string */ protected function getTo(SimpleMessage $message): string { return $this->formatTo($this->allRecipients($message)); } /** * @param array $recipients * @return string */ protected function formatTo(array $recipients) { $list = []; foreach ($recipients as $address => $name) { $list[] = $name ? sprintf('%s <%s>', $name, $address) : $address; } return implode(',', $list); } }