Beispiel #1
0
 /**
  * Update an address list
  *
  * Proxied to this from addFrom, addTo, addCc, addBcc, and addReplyTo.
  *
  * @param  AddressList $addressList
  * @param  string|Address\AddressInterface|array|AddressList|Traversable $emailOrAddressOrList
  * @param  null|string $name
  * @param  string $callingMethod
  * @throws Exception\InvalidArgumentException
  */
 protected function updateAddressList(AddressList $addressList, $emailOrAddressOrList, $name, $callingMethod)
 {
     if ($emailOrAddressOrList instanceof Traversable) {
         foreach ($emailOrAddressOrList as $address) {
             $addressList->add($address);
         }
         return;
     }
     if (is_array($emailOrAddressOrList)) {
         $addressList->addMany($emailOrAddressOrList);
         return;
     }
     if (!is_string($emailOrAddressOrList) && !$emailOrAddressOrList instanceof Address\AddressInterface) {
         throw new Exception\InvalidArgumentException(sprintf('%s expects a string, AddressInterface, array, AddressList, or Traversable as its first argument; received "%s"', $callingMethod, is_object($emailOrAddressOrList) ? get_class($emailOrAddressOrList) : gettype($emailOrAddressOrList)));
     }
     $addressList->add($emailOrAddressOrList, $name);
 }