多维度的IF语句重构 – 注释掉的为重构前的代码, 杂乱且可读性极低.
PHP中有很多方法解析XML. 本文单表使用DOM解析XML.
使用mb_send_mail方法发送html/plain格式的Email, HTML格式的邮件.
本方法将根据trim后的邮件内容设置email类型: 如果以"<"开始, 则将邮件设置为Html格式, 反之为plain格式.
// 读取上次报错时间 try { $fhRead = @fopen("timestamp/$this->id.txt", "r"); if($fhRead) { // echo "时间记录文件第一行".fgets($fhRead)."
"; // echo "时间记录文件第二行".fgets($fhRead)."
"; $lastSendEmail = strtotime(fgets($fhRead)); $lastSendSms = strtotime(fgets($fhRead)); }else { $this->logMesg("文件有误, 无法读取"); } }catch (Exception $e) { $this->logMesg("读取报错时间记录文件遇到错误:".$e); }
// 记录报错时间. try { $fhMarkTime = @fopen("timestamp/$this->id.txt", "w"); if($fhMarkTime) { fwrite($fhMarkTime, date("Y-m-d H:i:s",$upadtedLastSendEmail)."\n"); fwrite($fhMarkTime, date("Y-m-d H:i:s",$updatedLastSendSms)); }else { echo "文件写入错误."; } }catch (Exception $e) { echo "文件写入错误: ".$e; }
1. 创建Array: $arraySites = array();
2. addItem: $arraySites[$site->id] = $site;
3. 使用foreach遍历Array:
foreach ($arraySites as $site) { // 遍历每一个Site. // do something. } // Or: foreach($array as $key=>$value) { echo "$key,$value "; }
4. length: count($arraySite);
5. 打散/切割 Array : array_chunk($mails, $MAX_MAILS_PER_SMTP_SESSION, true);
该方法将会根据设定的大小对原数组进行切割, 生成多个小的数组(最后一个可能会少于单元大小), 第三个参数控制是否在打散后的数组内保留其原有key.
复制/移除 数组: http://liguoliang.com/2010/copy-and-remove-array-to-array-in-php/
// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.