<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>戈壁滩上的狗尾巴花</title>
	<atom:link href="http://liguoliang.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://liguoliang.com</link>
	<description>戈壁滩上盛开的一坨狗尾巴花</description>
	<lastBuildDate>Thu, 02 Sep 2010 09:51:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Linux: Copy/Rename/Move/Remove Directory &#8211; 复制/重命名/移动/删除目录</title>
		<link>http://liguoliang.com/2010/09/1484/</link>
		<comments>http://liguoliang.com/2010/09/1484/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 09:38:27 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Copy Directory]]></category>
		<category><![CDATA[Rename Directory]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/09/1484/</guid>
		<description><![CDATA[1. Copy 复制: 
<p>[root@ip-10-* webapps]# cp -r sourceDir/ /targetDir/&#160; <br />//将被复制到targetDir文件夹下 The SourceDir will be found under &#34;targetDir&#34;</p>
2]]></description>
			<content:encoded><![CDATA[<h3>1. Copy 复制: </h3>
<p>[root@ip-10-* webapps]# cp -r sourceDir/ /targetDir/&#160; <br />//将被复制到targetDir文件夹下 The SourceDir will be found under &quot;targetDir&quot;</p>
<h3>2. Rename 重命名: </h3>
<p>[root@ip-10-* 20100102update]# mv sourceDir/ newName</p>
<p>3. Move 移动:   </p>
<p>mv Source.zip targetDir/ </p>
<p>4. 移除整个目录:</p>
<p>[root@ip-10*webapps]# rm -rf Athena_Java/</p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/09/1484/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reset Mysql Root Password in XAMPP 在XAMPP中重置MySql密码</title>
		<link>http://liguoliang.com/2010/09/1482/</link>
		<comments>http://liguoliang.com/2010/09/1482/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 13:15:55 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[DB]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[XAMPP]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/09/1482/</guid>
		<description><![CDATA[<p>默认情况下, 通过XAMPP安装的Mysql Root密码为空. </p>
<p>在XAMPP中重置Mysql密码: </p>
<p>1. Go to <a href="http://localhost:port/security/">http://localhost:port/security/</a>&#160; 该链接将会对目前的配置进行安全检查</p>
<p>2. 该页面会检查当前安全配置, 并会带有链接: <a href="http://localhost/security/xamppsecurity.php"><b>http://</b></a></p>]]></description>
			<content:encoded><![CDATA[<p>默认情况下, 通过XAMPP安装的Mysql Root密码为空. </p>
<p>在XAMPP中重置Mysql密码: </p>
<p>1. Go to <a href="http://localhost:port/security/">http://localhost:port/security/</a>&#160; 该链接将会对目前的配置进行安全检查</p>
<p>2. 该页面会检查当前安全配置, 并会带有链接: <a href="http://localhost/security/xamppsecurity.php"><b>http://localhost/security/xamppsecurity.php</b></a></p>
<p>3. 该页面中可进行重置密码等操作.</p>
<p>See more : <a title="http://veerasundar.com/blog/2009/01/how-to-change-the-root-password-for-mysql-in-xampp/" href="http://veerasundar.com/blog/2009/01/how-to-change-the-root-password-for-mysql-in-xampp/">http://veerasundar.com/blog/2009/01/how-to-change-the-root-password-for-mysql-in-xampp/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/09/1482/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[旧]使用ERwin反向工程生成Oracle数据库的Physical Modal(物理数据模型)</title>
		<link>http://liguoliang.com/2010/08/1477/</link>
		<comments>http://liguoliang.com/2010/08/1477/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 10:22:36 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[DB]]></category>
		<category><![CDATA[ERwin]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1477/</guid>
		<description><![CDATA[<p>=&#62; 首先参考<a href="http://liguoliang.com/2008/11/346/">使用ERwin反向工程生成MySQL数据库的Physical Modal[物理数据模型] </a></p>
<p>选择Oracle, Next, 到如下界面:</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2010/08/Oracle.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Oracle" border="0" alt="Oracle" src="http://liguoliang.com/wp-content/uploads/2010/08/Oracle_thumb.jpg" width="390" height="423" /></a> </p>
<p>Connect, 稍等片刻即可.</p>]]></description>
			<content:encoded><![CDATA[<p>=&gt; 首先参考<a href="http://liguoliang.com/2008/11/346/">使用ERwin反向工程生成MySQL数据库的Physical Modal[物理数据模型] </a></p>
<p>选择Oracle, Next, 到如下界面:</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2010/08/Oracle.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Oracle" border="0" alt="Oracle" src="http://liguoliang.com/wp-content/uploads/2010/08/Oracle_thumb.jpg" width="390" height="423" /></a> </p>
<p>Connect, 稍等片刻即可.</p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1477/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[旧]Java: JDBC 取得ResultSet的长度</title>
		<link>http://liguoliang.com/2010/08/1476/</link>
		<comments>http://liguoliang.com/2010/08/1476/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 10:19:17 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JDBC]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1476/</guid>
		<description><![CDATA[<p>JDBC 取得ResultSet的长度:
<pre name="code" class="java">
	resultSet.last(); // 游标移到最后, 获得rs长度
			int length = resultSet.getRow();
			resultSet.first(); // 还原游标到rs开头
</pre>]]></description>
			<content:encoded><![CDATA[<p>JDBC 取得ResultSet的长度:
<pre name="code" class="java">
	resultSet.last(); // 游标移到最后, 获得rs长度
			int length = resultSet.getRow();
			resultSet.first(); // 还原游标到rs开头
</pre>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1476/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[旧文存档]Flex: Alert 使用总结 Using Alert in Flex</title>
		<link>http://liguoliang.com/2010/08/1475/</link>
		<comments>http://liguoliang.com/2010/08/1475/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 10:17:14 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Alert]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1475/</guid>
		<description><![CDATA[<p>1. 通过Alert强制用户选择.</p>
<p>2. 使用一个方法 Handle多个Alert.</p>


// 弹出Alert
			Alert.show(RM.getString(BUNDLE_ONLINE_TEST, &#34;olt.attempt.warn.remove&#34;), RM.getStr]]></description>
			<content:encoded><![CDATA[<p>1. 通过Alert强制用户选择.</p>
<p>2. 使用一个方法 Handle多个Alert.</p>
<pre class="java" name="code">

// 弹出Alert
			Alert.show(RM.getString(BUNDLE_ONLINE_TEST, &quot;olt.attempt.warn.remove&quot;), RM.getString(BUNDLE_ONLINE_TEST, &quot;olt.confirm.title&quot;),
				Alert.YES|Alert.CANCEL, null, onAlertClose).data = &quot;remove&quot;;
//----------------------统一响应---------------------------------

	// onWarning Close
	private function onAlertClose(e:CloseEvent):void {
		if((e.target as Alert).data == &quot;remove&quot;) {
			if(e.detail == Alert.YES) {
			...
			}else {
				// do nothing
			}
		}else if((e.target as Alert).data == ALERT_ATTEMPT) {
			if(e.detail == Alert.YES) {
				...
			}
		}else if((e.target as Alert).data == ALERT_GO_ON_ATTEMPT) {
			if(e.detail == Alert.YES) {
				...
			}
		}else {
			throw new Error(&quot;无法识别的Alert关闭类型: &quot; + e.toString());
		}
	}</pre>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1475/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[旧文存档]多维度的IF语句重构</title>
		<link>http://liguoliang.com/2010/08/1473/</link>
		<comments>http://liguoliang.com/2010/08/1473/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 10:05:04 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[软件工程]]></category>
		<category><![CDATA[Javas]]></category>
		<category><![CDATA[重构]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1473/</guid>
		<description><![CDATA[<p>多维度的IF语句重构 &#8211; 注释掉的为重构前的代码, 杂乱且可读性极低.</p>
<p> </p>]]></description>
			<content:encoded><![CDATA[<p>多维度的IF语句重构 &#8211; 注释掉的为重构前的代码, 杂乱且可读性极低.</p>
<p> <span id="more-1473"></span>
<pre class="java" name="code">
	/***
	 * 设定要保存的日历条目. 可能的类型:
	 * @param calItem_
	 */
	public void setCalItem(CalItem calItem_) {
		calItem = calItem_;
	}	

	public EOObject update(boolean before, boolean after, boolean peers) {
//		EOObject updatedCalItem = null;
//		if(!before &amp;&amp; !after &amp;&amp; !peers) { // 仅保存当前的calItem
//			updatedCalItem = updateSelf();
//		}else if(!before &amp;&amp; !after &amp;&amp; peers) { // 保存当前Meeting.
//			updatedCalItem = updatePeers();
//		}else if(before &amp;&amp; !after &amp;&amp; !peers) { // 向前更新重复条目
//			updatedCalItem = updateBefore();
//		}else if(!before &amp;&amp; after &amp;&amp; !peers) { // 向后更新重复条目
//			updatedCalItem = updateAfter();
//		}else if(before &amp;&amp; after &amp;&amp; !peers) { // 更新所有重复条目
//			updateBefore();
//			updatedCalItem = updateAfter();
//		}else {
//			// 参数有误
//		}

		updateSelf();
		if(before) { //
			updateBefore();
		}
		if(after) { // shi jian zhou
			updateAfter();
		}
		if(peers) { // peers - Tom's peers are Jack and Jane.
			updatePeers();
		}
		uow.flush();
		uow.close();

		return calItem;
	}</pre>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1473/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[旧文存档]JDBC: java.sql.SQLException: 结果集已耗尽 &amp; 对只转发结果集的无效操作</title>
		<link>http://liguoliang.com/2010/08/1472/</link>
		<comments>http://liguoliang.com/2010/08/1472/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 10:01:47 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[java.sql.SQLException]]></category>
		<category><![CDATA[JDBC]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1472/</guid>
		<description><![CDATA[1. java.sql.SQLException: 结果集已耗尽 
<p>原因: 执行的数据库查询没有查询到任何结果，却调用了resultSet.next(). </p>
2. java.sql.SQLException: 对只转发结果集的无效操作:
<p> 如果conn在创建时, 若不给定参数，预设是ResultSe</p>]]></description>
			<content:encoded><![CDATA[<h3>1. java.sql.SQLException: 结果集已耗尽 </h3>
<p>原因: 执行的数据库查询没有查询到任何结果，却调用了resultSet.next(). </p>
<h3>2. java.sql.SQLException: 对只转发结果集的无效操作:</h3>
<p> 如果conn在创建时, 若不给定参数，预设是ResultSet.TYPE_FORWARD_ONLY、 ResultSet.CONCUR_READ_ONL, 此时不可进行游标操作, 会报错: java.sql.SQLException: 对只转发结果集的无效操作.    <br />欲操作游标, 则应使用stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);</p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1472/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用Adobe Captivate 4 要注意的几点</title>
		<link>http://liguoliang.com/2010/08/1469/</link>
		<comments>http://liguoliang.com/2010/08/1469/#comments</comments>
		<pubDate>Sat, 28 Aug 2010 10:01:41 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[哥是个爱分享的人]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Captivate]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1469/</guid>
		<description><![CDATA[<p>多次使用Captivate后, 总结下避免出现问题的几点:</p>
<p>1. Vista, Win7没有特殊情况, 都要run as Admin</p>
<p>2. 元素命名:</p>
<p>Never Never Never 在工程中使用中文名的元素!   <br />不要在元素命中使用&#34;.&#34;, 以往我在导入声音时, 如此命名:</p>]]></description>
			<content:encoded><![CDATA[<p>多次使用Captivate后, 总结下避免出现问题的几点:</p>
<p>1. Vista, Win7没有特殊情况, 都要run as Admin</p>
<p>2. 元素命名:</p>
<p>Never Never Never 在工程中使用中文名的元素!   <br />不要在元素命中使用&quot;.&quot;, 以往我在导入声音时, 如此命名: 1.1, 1.2, 1.3, 初次使用并无问题, 但再次打开或是复制后打开 发现会有很多copy of 1。&#8230; 此后声音完全乱了套</p>
<p>3. 慎重升级到5。 最近装了5， 但发现4的源文件到5的打开有若干问题, 如字体无法自动识别等.</p>
<p>4. 没事不要乱点, 也不要在导出或发布时&quot;取消&quot;   </p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1469/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: Reading XML with DOM 使用DOM解析XML</title>
		<link>http://liguoliang.com/2010/08/1467/</link>
		<comments>http://liguoliang.com/2010/08/1467/#comments</comments>
		<pubDate>Sat, 28 Aug 2010 09:50:01 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[DOMDocument]]></category>
		<category><![CDATA[PHP解析XML]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1467/</guid>
		<description><![CDATA[<p>PHP中有很多方法解析XML. 本文单表使用DOM解析XML.</p>
<p> </p>]]></description>
			<content:encoded><![CDATA[<p>PHP中有很多方法解析XML. 本文单表使用DOM解析XML.</p>
<p> <span id="more-1467"></span>
<p>要进行解析的XML:</p>
<pre name="code" class="xml">
  <site id="Guoliang" url="http://liguoliang.com/status.html" expectedReturnString="oK" maxRetries="2" minErrorReportInterval="2" timeOut="10">
    <notifySmsTo>13999910**</notifySmsTo>
    <notifySmsBody><![CDATA[
     	[网络异常] 服务器: {ID}网络出现问题, 请及时检查{URL}.
    ]]&gt;</notifySmsBody>
    <notifyEmailTo>me@liguoliang.mail</notifyEmailTo>
    <notifyEmailSubject>[网络异常]服务器: {ID}网络异常</notifyEmailSubject>
    <notifyEmailBody><![CDATA[
 	   [网络异常] 服务器: {ID}网络出现问题, 请及时检查{URL}.
    ]]&gt;</notifyEmailBody>
  </site>
</pre>
<p>进行解析的PHP代码:</p>
<pre class="java" name="code">	/**
	 * 解析XML, 创建Site, 返回Site列表.
	 * @param $xmlPath
	 * @return unknown_type
	 */
	public static function loadSitesFormXML($xmlPath) {
		$xml = new DOMDocument(); // 创建DOM
		$xml-&gt;load($xmlPath);//'sites.xml'); // 加载XML
		$sitesXml = $xml-&gt;getElementsByTagName(&quot;site&quot;); // 根据Name获得Elements列表.

		$arraySites = array();

		foreach($sitesXml as $site) { // 遍历每一个Element.
			$site = self::createSite($site); // 转入createSite()方法进一步解析DOMElement, 创建并返回Site对象.
			$arraySites[$site-&gt;id] = $site;
		}
		// logMesg(&quot;XML解析完毕, 共获得Stie对象: &quot;.count($arraySites), false);
		return $arraySites;
	}

	/**
	 * 解析给定的DOMElement, 创建并返回Site对象.
	 * @param $site
	 * @return unknown_type
	 */
	public static function createSite(DOMElement $site) {
		$id = $site-&gt;getAttribute(&quot;id&quot;); // 获得Attribute ID
		$url = $site-&gt;getAttribute(&quot;url&quot;); // 获得Attribute URL
		$expectedReturnString = $site-&gt;getAttribute(&quot;expectedReturnString&quot;);
		$timeOut = $site-&gt;getAttribute(&quot;timeOut&quot;);
		$maxRetries = $site-&gt;getAttribute(&quot;maxRetries&quot;);
		$minErrorReportInterval = $site-&gt;getAttribute(&quot;minErrorReportInterval&quot;);

		$notifySmsToElement = $site-&gt;getElementsByTagName(&quot;notifySmsTo&quot;); // 获得Element: 手机短信发送对象
		$notifySmsTo = $notifySmsToElement-&gt;item(0)-&gt;nodeValue;

		$notifySmsBodyElement = $site-&gt;getElementsByTagName(&quot;notifySmsBody&quot;);
		$notifySmsBody = $notifySmsBodyElement-&gt;item(0)-&gt;nodeValue;

		$notifyEmailToElement = $site-&gt;getElementsByTagName(&quot;notifyEmailTo&quot;);
		$notifyEmailTo = $notifyEmailToElement-&gt;item(0)-&gt;nodeValue;

		$notifyEmailSubjectElement = $site-&gt;getElementsByTagName(&quot;notifyEmailSubject&quot;);
		$notifyEmailSubject = $notifyEmailSubjectElement-&gt;item(0)-&gt;nodeValue;

		$notifyEmailBodyElement = $site-&gt;getElementsByTagName(&quot;notifyEmailBody&quot;);
		$notifyEmailBody = $notifyEmailBodyElement-&gt;item(0)-&gt;nodeValue;
		return $site = new Site($id, $url, $expectedReturnString, $timeOut, $maxRetries, $minErrorReportInterval, $notifySmsTo, $notifySmsBody, $notifyEmailTo, $notifyEmailSubject, $notifyEmailBody);
	}</pre>
<p>参考: </p>
<p>0. PHP手册DOMDocument: <a href="http://php.net/manual/en/class.domdocument.php">http://php.net/manual/en/class.domdocument.php</a> </p>
<p>1. <a href="http://www.ibm.com/developerworks/library/os-xmldomphp/" target="_blank">IBM DW :Reading and writing the XML DOM with PHP</a> </p>
<p>2. <a href="http://andylin02.javaeye.com/blog/564531">解读PHP DOMDocument在解析XML文件中的作用</a></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1467/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: Sending Html/plain Email by mb_send_mail 发送HTML/Plain格式的邮件</title>
		<link>http://liguoliang.com/2010/08/1465/</link>
		<comments>http://liguoliang.com/2010/08/1465/#comments</comments>
		<pubDate>Sat, 28 Aug 2010 06:55:01 +0000</pubDate>
		<dc:creator>老李</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[php mail]]></category>
		<category><![CDATA[PHP发送邮件]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2010/08/1465/</guid>
		<description><![CDATA[<p>使用mb_send_mail方法发送html/plain格式的Email, HTML格式的邮件. </p>
<p>本方法将根据trim后的邮件内容设置email类型: 如果以&#34;&#60;&#34;开始, 则将邮件设置为Html格式, 反之为plain格式.</p>
<p> </p>]]></description>
			<content:encoded><![CDATA[<p>使用mb_send_mail方法发送html/plain格式的Email, HTML格式的邮件. </p>
<p>本方法将根据trim后的邮件内容设置email类型: 如果以&quot;&lt;&quot;开始, 则将邮件设置为Html格式, 反之为plain格式.</p>
<p> <span id="more-1465"></span>
<pre class="java" name="code">	/**
	 * 发送报错邮件 by liguoliang.com
	 * @return unknown_type
	 */
	function sendErrorEmail() {
		/**
		 * 覆盖php.ini设置, 防止出现中文乱码.
		 */
		ini_set(&quot;mbstring.language&quot;, &quot;Neutral&quot;);
		ini_set(&quot;mbstring.internal_encoding&quot;, &quot;UTF-8&quot;);
		ini_set(&quot;mbstring.http_input&quot;, &quot;UTF-8&quot;);
		ini_set(&quot;mbstring.http_output&quot;, &quot;UTF-8&quot;);
		ini_set(&quot;mbstring.encoding_translation&quot;, &quot;On&quot;);
		ini_set(&quot;mbstring.detect_order&quot;, &quot;auto&quot;);
		ini_set(&quot;mbstring.substitute_character&quot;, &quot;long&quot;);

		$headers = 'Reply-To: webmaster@example.com' . &quot;\r\n&quot;;

		$emailSubject =  &quot;email body goes here&quot;; //$this-&gt;getReplacedStr($this-&gt;notifyEmailSubject);

		$emailBody = trim($this-&gt;getReplacedStr($this-&gt;notifyEmailBody));

		if(mb_substr($emailBody, 0, 1) == &quot;&lt;&quot; || mb_substr($emailBody, 0, 4) == &quot;&lt;&quot;) {
			$headers .= &quot;Content-type: text/html; \r\n&quot;;
		}else {
			$headers .= &quot;Content-Type: text/plain; \r\n&quot;;
		}
		$headers .= &quot; charset=\&quot;utf-8\&quot;; \r\n&quot;;

		return mb_send_mail($this-&gt;notifyEmailTo, $emailSubject, $emailBody, $headers);
	}</pre>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2010/08/1465/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
