Postmark\PostmarkClient::sendEmailBatch PHP Méthode

sendEmailBatch() public méthode

Each email is an associative array of values, but note that the 'Attachments' key must be an array of 'PostmarkAttachment' objects if you intend to send attachments with an email.
public sendEmailBatch ( array $emailBatch = [] ) : Postmark\Models\DynamicResponseModel
$emailBatch array An array of emails to be sent in one batch.
Résultat Postmark\Models\DynamicResponseModel
    function sendEmailBatch($emailBatch = array())
    {
        $final = array();
        foreach ($emailBatch as $email) {
            foreach ($email as $emailIdx => $emailValue) {
                if (strtolower($emailIdx) == 'headers') {
                    $email[$emailIdx] = $this->fixHeaders($emailValue);
                }
            }
            array_push($final, $email);
        }
        return new DynamicResponseModel($this->processRestRequest('POST', '/email/batch', $final));
    }

Usage Example

 function testClientCanSendBatchMessages()
 {
     $tk = parent::$testKeys;
     $currentTime = date("c");
     $batch = array();
     $attachment = PostmarkAttachment::fromRawData("attachment content", "hello.txt", "text/plain");
     for ($i = 0; $i < 5; $i++) {
         $payload = array('From' => $tk->WRITE_TEST_SENDER_EMAIL_ADDRESS, 'To' => $tk->WRITE_TEST_EMAIL_RECIPIENT_ADDRESS, 'Subject' => "Hello from the PHP Postmark Client Tests! ({$currentTime})", 'HtmlBody' => '<b>Hi there! (batch test)</b>', 'TextBody' => 'This is a text body for a test email.', 'TrackOpens' => true, 'Headers' => array("X-Test-Header" => "Test Header Content", 'X-Test-Date-Sent' => date('c')), 'Attachments' => array($attachment));
         $batch[] = $payload;
     }
     $client = new PostmarkClient($tk->WRITE_TEST_SERVER_TOKEN, $tk->TEST_TIMEOUT);
     $response = $client->sendEmailBatch($batch);
     $this->assertNotEmpty($response, 'The client could not send a batch of messages.');
 }
All Usage Examples Of Postmark\PostmarkClient::sendEmailBatch