cakephp2-php8/lib/Cake/Network/Email/AbstractTransport.php

76 lines
1.7 KiB
PHP
Raw Permalink Normal View History

2011-03-01 16:47:05 +00:00
<?php
/**
* Abstract send email
*
2017-06-10 21:33:55 +00:00
* CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
2011-03-01 16:47:05 +00:00
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
2011-03-01 16:47:05 +00:00
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
2017-06-10 21:33:55 +00:00
* @link https://cakephp.org CakePHP(tm) Project
* @package Cake.Network.Email
2011-03-01 16:47:05 +00:00
* @since CakePHP(tm) v 2.0.0
* @license https://opensource.org/licenses/mit-license.php MIT License
2011-03-01 16:47:05 +00:00
*/
/**
* Abstract transport for sending email
2011-03-01 16:47:05 +00:00
*
* @package Cake.Network.Email
2011-03-01 16:47:05 +00:00
*/
abstract class AbstractTransport {
/**
* Configurations
*
* @var array
*/
protected $_config = array();
2011-03-01 16:47:05 +00:00
/**
* Send mail
*
2014-06-04 18:58:55 +00:00
* @param CakeEmail $email CakeEmail instance.
* @return array
2011-03-01 16:47:05 +00:00
*/
abstract public function send(CakeEmail $email);
/**
* Set the config
*
2014-06-04 18:58:55 +00:00
* @param array $config Configuration options.
* @return array Returns configs
*/
public function config($config = null) {
if (is_array($config)) {
$this->_config = $config + $this->_config;
}
return $this->_config;
}
2011-03-01 16:47:05 +00:00
/**
* Help to convert headers in string
*
* @param array $headers Headers in format key => value
2014-06-04 18:58:55 +00:00
* @param string $eol End of line string.
2011-03-01 16:47:05 +00:00
* @return string
*/
protected function _headersToString($headers, $eol = "\r\n") {
$out = '';
foreach ($headers as $key => $value) {
if ($value === false || $value === null || $value === '') {
continue;
}
2011-03-01 16:47:05 +00:00
$out .= $key . ': ' . $value . $eol;
}
if (!empty($out)) {
$out = substr($out, 0, -1 * strlen($eol));
}
return $out;
}
}