本文整理匯總了PHP中EmailMessage::recurse方法的典型用法代碼示例。如果您正苦於以下問題:PHP EmailMessage::recurse方法的具體用法?PHP EmailMessage::recurse怎麽用?PHP EmailMessage::recurse使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類EmailMessage
的用法示例。
在下文中一共展示了EmailMessage::recurse方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: recurse
public function recurse($messageParts, $prefix = '', $index = 1, $fullPrefix = true)
{
foreach ($messageParts as $part) {
$partNumber = $prefix . $index;
if ($part->type == 0) {
if ($part->subtype == 'PLAIN') {
$this->bodyPlain .= $this->getPart($partNumber, $part->encoding);
} else {
$this->bodyHTML .= $this->getPart($partNumber, $part->encoding);
}
} elseif ($part->type == 2) {
$msg = new EmailMessage($this->connection, $this->messageNumber);
$msg->getAttachments = $this->getAttachments;
$msg->recurse($part->parts, $partNumber . '.', 0, false);
$this->attachments[] = array('type' => $part->type, 'subtype' => $part->subtype, 'filename' => '', 'data' => $msg, 'inline' => false);
} elseif (isset($part->parts)) {
if ($fullPrefix) {
$this->recurse($part->parts, $prefix . $index . '.');
} else {
$this->recurse($part->parts, $prefix);
}
} elseif ($part->type > 2) {
if (isset($part->id)) {
$id = str_replace(array('<', '>'), '', $part->id);
$this->attachments[$id] = array('type' => $part->type, 'subtype' => $part->subtype, 'filename' => $this->getFilenameFromPart($part), 'data' => $this->getAttachments ? $this->getPart($partNumber, $part->encoding) : '', 'inline' => true);
} else {
$this->attachments[] = array('type' => $part->type, 'subtype' => $part->subtype, 'filename' => $this->getFilenameFromPart($part), 'data' => $this->getAttachments ? $this->getPart($partNumber, $part->encoding) : '', 'inline' => false);
}
}
$index++;
}
}