29.2. Zend_mime_Message
29.2.1. 简介
Zend_Mime_Message
表示一个包含一个或多个段(段以Zend_Mime_Part
对象表示)的符合MIME标准的消息。
在Zend_Mime_Message
中,符合MIME标准的多段消息由Zend_Mime_Part
对象产生。
编码和分段也是在Zend_Mime_Message中被处理。Zend_Mime_Message
对象也可从给定的字符串中重构出来(实验性的)。
Zend_Mime_Message也被Zend_Mail
使用(译注:Zend_Mail继承了Zend_Mime_Message)。
29.2.2. 实例化
Zend_Mime_Message
没有构造函数。
29.2.3. 增加MIME消息段
Zend_Mime_Message
对象通过调用addPart($part)
方法,
可以添加Zend_Mime_Part
对象。
调用Zend_Mime_Message
对象的getParts()
方法,
返回Zend_Mime_Part
对象数组。
Zend_Mime_Part对象可以被更改,因为他们以引用的方式存储在Zend_Mime_Message对象的数组中。
如果数组中有新的段加入或者改变了段的顺序,该数组需通过调用setParts($partsArray)
方法,反馈到Zend_Mime_Message
中去。
当Zend_Mime_Message
中存在多个段,方法isMultiPart()
将返回TRUE。
Zend_Mime_Message
在产生实际输出产生多段的MIME消息。
29.2.4. 分界线处理
Zend_Mime_Message
通常创建和使用自身的Zend_Mime
对象来产生MINE分界线。
如果你想自己定义分界线或想更改Zend_Mime_Message
自身的Zend_Mime
对象的缺省的行为,
你可以自己实例化Zend_Mime
对象,然后通过setMime(Zend_Mime $mime)
方法注册到Zend_Mime_Message
对象中去,通常你不需要这么做。
->getMime()
方法,返回Zend_Mime
实例,当generateMessage()
被调用时Zend_Mime
实例用来渲染MIME消息。
->generateMessage()
方法,渲染Zend_Mime_Message
的内容为字符串。
29.2.5. 解析字符串,创建Zend_Mime_Message对象(实验性的)
给定一个字符串形式的符合MIME标准的消息,可以重构出Zend_Mime_Message
对象。
Zend_Mime_Message
有一个静态的工厂方法,解析字符串,返回Zend_Mime_Message
对象。
Zend_Mime_Message::createFromMessage($str, $boundary)
将给定的字符串解码,
返回Zend_Mime_Message
对象,可以用getParts()
方法来检验一下。