Введение в Zend Framework

 Learning Zend Framework

appendix

 Zend Framework Reference


  • Zend_Gdata
  • Zend_Http
  • Zend_InfoCard
  • Zend_Json
  • Zend_Layout
  • Zend_Ldap
  • Zend_Loader
  • Zend_Locale
  • Zend_Log
  • Zend_Mail
  • Zend_Markup
  • Zend_Measure
  • Zend_Memory
  • Zend_Mime
  • Zend_Navigation
  • Zend_Oauth
  • Zend_OpenId
  • Zend_Paginator
  • Zend_Pdf
  • Zend_ProgressBar
  • Zend_Queue
  • Zend_Reflection
  • Zend_Registry
  • Zend_Rest

  • Zend_Search_Lucene
  • Zend_Serializer
  • Zend_Server
  • Zend_Service
  • Zend_Session
  • Zend_Soap
  • Zend_Tag
  • Zend_Test
  • Zend_Text
  • Zend_TimeSync
  • Zend_Tool
  • Zend_Tool_Framework
  • Zend_Tool_Project
  • Zend_Translate
  • Zend_Uri
  • Zend_Validate
  • Zend_Version
  • Zend_View
  • Zend_Wildfire
  • Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Ttranslation 27.4% Update 2010-11-28 - Revision 23238 - Version ZF 1.11.x

    45.3. Отправка нескольких сообщений за одно SMTP-соединение

    По умолчанию один SMTP-транспорт создает одно соединение и повторно использует его за все время выполнения скрипта. Вы можете отправлять несколько сообщений через это SMTP-соединение. До каждой отправки передается команда RSET для получения подтверждения связи.

    Пример 45.4. Отправка нескольких сообщений за одно SMTP-соединение

    // Создание транспорта
    $transport = new Zend_Mail_Transport_Smtp('localhost');

    // Цикл с отправкой сообщений
    for ($i 0$i 5$i++) {
        
    $mail = new Zend_Mail();
        
    $mail->addTo('studio@peptolab.com''Test');
        
    $mail->setFrom('studio@peptolab.com''Test');
        
    $mail->setSubject(
            
    'Demonstration - Sending Multiple Mails per SMTP Connection'
        
    );
        
    $mail->setBodyText('...Your message here...');
        
    $mail->send($transport);
    }

    Если вы хотите создавать отдельное соединение для каждой отправки сообщения, то вам нужно создавать и уничтожать объект транспорта до и после каждого вызова метода send(). Либо вы можете управлять соединением между отправками, используя объект протокола транспорта.

    Пример 45.5. Управление транспортным соединением вручную

    // Создание транспорта
    $transport = new Zend_Mail_Transport_Smtp();

    $protocol = new Zend_Mail_Protocol_Smtp('localhost');
    $protocol->connect();
    $protocol->helo('localhost');

    $transport->setConnection($protocol);

    // Цикл с отправкой сообщений
    for ($i 0$i 5$i++) {
        
    $mail = new Zend_Mail();
        
    $mail->addTo('studio@peptolab.com''Test');
        
    $mail->setFrom('studio@peptolab.com''Test');
        
    $mail->setSubject(
            
    'Demonstration - Sending Multiple Mails per SMTP Connection'
        
    );
        
    $mail->setBodyText('...Your message here...');

        
    // Управление соединением вручную
        
    $protocol->rset();
        
    $mail->send($transport);
    }

    $protocol->quit();
    $protocol->disconnect();

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...