Example #1
0
 /**
  * 获取并设置区域信息   	
  */
 protected function regionInfo()
 {
     if (empty($key)) {
         // 采用行政区域参数
         if (!empty($_GET['region'])) {
             $_region = Tools::convertToUtf8(urldecode($_GET['region']));
             $city = explode('市', $_region);
             if (!empty($city[0])) {
                 $key = explode('省', $city[0]);
             } else {
                 $key = $_region;
             }
         } elseif (!empty($_GET['area'])) {
             $_area = Tools::convertToUtf8(urldecode($_GET['area']));
             $key = explode(',', $_area);
         } elseif (!empty($_GET['prov']) || !empty($_GET['city'])) {
             $key[] = Tools::convertToUtf8(trim($_GET['prov']));
             // 关键词——2
             $key[] = empty($_GET['city']) ? '' : Tools::convertToUtf8(trim($_GET['city']));
             // 关键词2——2
         }
         // 采用ip参数
         if (empty($key[1]) && empty($key[0])) {
             if (!empty($_GET['geoip'])) {
                 $ip = trim($_GET['geoip']);
             } else {
                 $ip = !empty($_COOKIE['geoip']) ? trim($_COOKIE['geoip']) : '';
             }
             preg_match('/[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}/', $ip, $matches);
             $ip = $matches[0];
             $key = !$ip ? null : GeoTool::getAreaNameByIp($ip);
         }
     }
     // 市
     if (empty($key[1])) {
         // $key [1] = $key [0];
         // unset ( $key [0] );
     } else {
         $this->region['city'] = Tools::convertToUtf8($key[1]);
     }
     // 省
     if (empty($key[0])) {
         // unset ( $key [0] );
     } else {
         $this->region['prov'] = Tools::convertToUtf8($key[0]);
     }
     debugLog(__CLASS__ . ':region', $this->region);
 }
Example #2
0
 /**
  * @desc 使用smtp发送邮件
  * @param string/array $to 收件人,可以是字符串/数组,如果是字符串同时是多个收件人,则收件人地址之间使用英文分号(;)分隔
  * @param string $subject 邮件标题
  * @param string $body 邮件正文
  * @param array $conf 
  * array( <br />
  * 'port' => 邮箱服务器端口,默认25, <br />
  * 'host'=>'邮箱服务器地址,默认smtp.163.com', <br />
  * 'username'=>'邮箱地址,默认 iorichina56@163.com', <br />
  * 'password'=>'密码,默认 iorichina56@163.com的密码', <br />
  * 'fromname'=>显示名称 ,默认是"56.com首页告警系统"<br />
  * )
  */
 public static function sendEmail($to, $subject, $body, $conf = array())
 {
     try {
         $mail = new PHPMailer(true);
         //New instance, with exceptions enabled
         $mail->CharSet = 'utf-8';
         //$mail->IsSMTP (); // tell the class to use SMTP
         $mail->Mailer = 'smtp';
         //$mailer
         $mail->SMTPAuth = true;
         // enable SMTP authentication
         $mail->Port = $conf['port'] ? $conf['port'] : 25;
         // set the SMTP server port
         $mail->Host = $conf['host'] ? $conf['host'] : "smtp.163.com";
         // SMTP server
         $mail->Username = $conf['username'] ? $conf['username'] : "******";
         // SMTP server username
         $mail->Password = $conf['password'] ? $conf['password'] : "******";
         // SMTP server password
         //$mail->IsSendmail (); // tell the class to use Sendmail
         //$mail->AddReplyTo ( "*****@*****.**", "First Last" );
         $mail->From = $conf['username'] ? $conf['username'] : "******";
         $mail->FromName = Tools::convertToUtf8($conf['fromname'] ? $conf['fromname'] : "56.com首页告警系统");
         if (is_array($to)) {
             foreach ($to as $addr) {
                 $addr = trim($addr);
                 $mail->AddAddress($addr);
             }
         } elseif (strpos($to, ';')) {
             preg_match_all('/[^;]+/i', $to, $matches, PREG_SET_ORDER);
             if (is_array($matches)) {
                 foreach ($matches as $addr) {
                     $addr = trim($addr);
                     $mail->AddAddress($addr);
                 }
             }
         } elseif (!empty($to)) {
             $mail->AddAddress($to);
         } else {
             return false;
         }
         //$body = preg_replace ( '/\\\\/', '', $body ); //Strip backslashes
         //$body = Tools::convertToUtf8 ( $body );
         $subject = Tools::convertToUtf8($subject);
         $mail->Subject = $subject;
         $mail->AltBody = "56.com";
         // optional, comment out and test
         $mail->WordWrap = $conf['wordwrap'] ? $conf['wordwrap'] : 80;
         // set word wrap
         if (!isset($conf['html']) || $conf['html']) {
             $mail->MsgHTML($body);
             //$mail->Body = $body;
         } else {
             $body = htmlspecialchars($body);
             $mail->Body = $body;
         }
         $return = $mail->Send();
         return $return;
     } catch (phpmailerException $e) {
         return $e->errorMessage();
     }
 }