このコンポーネントは使ったことがないのですが、ソースを見ると仕様?のような気がします
CakePHP1.3
1
2 function send($content = null, $template = null, $layout = null) {
3 $this->_createHeader();
4
5 if ($template) {
6 $this->template = $template;
7 }
8
9 if ($layout) {
10 $this->layout = $layout;
11 }
12
13 if (is_array($content)) {
14 $content = implode("\n", $content) . "\n";
15 }
16
17 $this->htmlMessage = $this->textMessage = null;
18 if ($content) {
19 if ($this->sendAs === 'html') {
20 $this->htmlMessage = $content;
21 } elseif ($this->sendAs === 'text') {
22 $this->textMessage = $content;
23 } else {
24 $this->htmlMessage = $this->textMessage = $content;
25 }
26 }
27
28 if ($this->sendAs === 'text') {
29 $message = $this->_wrap($content);
30 } else {
31 $message = $this->_wrap($content, 998);
32 }
33
34 if ($this->template === null) {
35 $message = $this->_formatMessage($message);
36 } else {
37 $message = $this->_render($message);
38 }
39
40 $message[] = ''; // ←ここで1行足しているように見える
41 $this->__message = $message;
42
43 if (!empty($this->attachments)) {
44 $this->_attachFiles();
45 }
46
47 if (!empty($this->attachments)) {
48 $this->__message[] = '';
49 $this->__message[] = '--' . $this->__boundary . '--';
50 $this->__message[] = '';
51 }
52
53 $_method = '_' . $this->delivery;
54 $sent = $this->$_method();
55
56 $this->__header = array();
57 $this->__message = array();
58
59 return $sent;
60 }
61 function _wrap($message, $lineLength = null) {
62 $message = $this->_strip($message, true);
63 $message = str_replace(array("\r\n","\r"), "\n", $message);
64 $lines = explode("\n", $message);
65 $formatted = array();
66
67 if ($this->_lineLength !== null) {
68 trigger_error(__('_lineLength cannot be accessed please use lineLength', true), E_USER_WARNING);
69 $this->lineLength = $this->_lineLength;
70 }
71
72 if (!$lineLength) {
73 $lineLength = $this->lineLength;
74 }
75
76 foreach ($lines as $line) {
77 if (substr($line, 0, 1) == '.') {
78 $line = '.' . $line;
79 }
80 $formatted = array_merge($formatted, explode("\n", wordwrap($line, $lineLength, "\n", true)));
81 }
82 $formatted[] = ''; // ここでも1行足しているように見える
83 return $formatted;
84 }
85
追加されている空の配列が、メール送信時に無視されないのであれば、余計な1行が追加されるのではと推測されますね