Минимизация Zend Framework для Zend_Mail?

Возможный дубликат:
Использовать компоненты Zend Framework без реальной структуры?

Мне просто нужны функции Zend_Mail для Zend Framework, но вся структура составляет около 300 МБ. Есть ли способ сократить его до базовых и Zend_Mail для экономии места на диске?

Да, раньше я использовал Zend_Mail с автономным SMTP, вот нужные мне файлы. Я также уменьшил его до того, что вам нужно, если вы также хотите использовать sendmail.

Если вы хотите использовать Sendmail, это самый простой способ. Ваши зависимости:

  • Zend / Exception.php
  • Zend / Mail.php
  • Zend / Mime.php
  • Zend / Почта / Exception.php
  • Zend / Почта / Транспорт / Abstract.php
  • Zend / Почта / Транспорт / Exception.php
  • Zend / Почта / Транспорт / Sendmail.php
  • Zend / Mime / Exception.php
  • Zend / Mime / message.php
  • Zend / Mime / Part.php

И с этими файлами, вот пример использования:

<?php // optionally // set_include_path(get_include_path() . PATH_SEPARATOR . '/path/to/Zend'); require_once 'Zend/Mail.php'; require_once 'Zend/Mail/Transport/Sendmail.php'; $transport = new Zend_Mail_Transport_Sendmail(); $mail = new Zend_Mail(); $mail->addTo('user@domain') ->setSubject('Mail Test') ->setBodyText("Hello,\nThis is a Zend Mail message...\n") ->setFrom('sender@domain'); try { $mail->send($transport); echo "Message sent!<br />\n"; } catch (Exception $ex) { echo "Failed to send mail! " . $ex->getMessage() . "<br />\n"; } 

Если вам нужен SMTP, у вас есть еще несколько зависимостей. В дополнение к вышесказанному вам нужно как минимум:

  • Zend / Loader.php
  • Zend / registry.php
  • Zend / Validate.php
  • Zend / Почта / Протокол / Abstract.php
  • Zend / Почта / Протокол / Smtp.php
  • Zend / Почта / Транспорт / Smtp.php
  • Zend / Validate / Abstract.php
  • Zend / Validate / Hostname.php
  • Zend / Validate / Interface.php
  • Zend / Validate / Ip.php
  • Zend / Validate / Hostname / *
  • Zend / Почта / Протокол / Smtp / Auth / *

Тогда вы можете сделать что-то вроде этого:

 <?php require_once 'Zend/Mail.php'; require_once 'Zend/Mail/Transport/Smtp.php'; $config = array(//'ssl' => 'tls', 'port' => '25', //465', 'auth' => 'login', 'username' => 'user', 'password' => 'password'); $transport = new Zend_Mail_Transport_Smtp('smtp.example.com', $config); $mail = new Zend_Mail(); $mail->addTo('user@domain') ->setSubject('Mail Test') ->setBodyText("Hello,\nThis is a Zend Mail message...\n") ->setFrom('sender@domain'); try { $mail->send($transport); echo "Message sent!<br />\n"; } catch (Exception $ex) { echo "Failed to send mail! " . $ex->getMessage() . "<br />\n"; } 

Загрузите минимальный пакет Zend.

http://framework.zend.com/releases/ZendFramework-1.11.11/ZendFramework-1.11.11-minimal.zip

Это не так уж и много. Несжатая версия – 23 МБ. И у вас есть класс Zend_Mail, который вам нужен.