欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP常用处理静态操作类

程序员文章站 2022-12-01 14:54:44
详细一个php开发时常用处理的操作类 - 希望大家多多补充 - 完善这个操作类

详细一个php开发时常用处理的操作类 - 希望大家多多补充 - 完善这个操作类

<?php
/**
 * 常用静态类,这里主要整理了一些php常常会用到的方法。
 *
 * @author zcstrong - youkuiyuan
 */
  class c {
    /*
     * 私有处理随机数的内置参数
     * array 随机数数组/param 随机数长度
     * 返回一个随机数
     */
    static private function random($array , $param) {
      $randarray = $array;
      $randcount = count($randarray);
      $num = intval($param);
      $resultstr = "";
      for($i = 0 ; $i < $num ; $i++){
        $resultstr .= $randarray[rand(0, intval($randcount) - 1)];
      }
      return $resultstr;
    }
     
    //随机数(数字类型)
    static public function randnum($param = 8){
      $randarray = str_split("1234567890");
      $resultstr = c::random($randarray,$param);
      return $resultstr;
    }
     
    //随机数(混合类型) - 无0
    static public function randstr($param = 8 , $capslock = false){
      $randarray = str_split("abcdefghijklmnopqrstuvwxyz123456789abcdefghigklmnopqrstuvwxyz");
      $resultstr = c::random($randarray,$param);
      if($capslock){
        return strtoupper($resultstr);
      }
      else {
        return $resultstr;
      }
    }
     
    //加密字符串
    static public function enbasecode($data, $key = "zcstrong"){
      $key = md5($key);//对于预设的key,md5
      $x = 0;
      $len = strlen($data);
      $l = strlen($key);
      for ($i = 0; $i < $len; $i++){
        if ($x == $l){
          $x = 0;
        }
        $char .= $key{$x};
        $x++;
      }
      for ($i = 0; $i < $len; $i++){
        $str .= chr(ord($data{$i}) + (ord($char{$i})) % 256);
      }
      return base64_encode($str);
    }
     
    //机密字符串
    static public function debasecode($data, $key = "zcstrong"){
      $key = md5($key);
      $x = 0;
      $data = base64_decode($data);
      $len = strlen($data);
      $l = strlen($key);
      for ($i = 0; $i < $len; $i++){
        if ($x == $l){
          $x = 0;
        }
        $char .= substr($key, $x, 1);
        $x++;
      }
      for ($i = 0; $i < $len; $i++){
        if (ord(substr($data, $i, 1)) < ord(substr($char, $i, 1))){
          $str .= chr((ord(substr($data, $i, 1)) + 256) - ord(substr($char, $i, 1)));
        }
        else{
          $str .= chr(ord(substr($data, $i, 1)) - ord(substr($char, $i, 1)));
        }
      }
      return $str;
    }
     
    //正则手机号 /^((1[3,5,8][0-9])|(14[5,7])|(17[0,6,7,8]))\d{8}$/
    static public function regularphone($string){
      $resultstr = preg_match("/^((1[3,5,8][0-9])|(14[5,7])|(17[0,6,7,8]))\d{8}$/",$string);
      if(intval($resultstr) == 1){
        return true;
      }
      else{
        return false;
      }
    }
 
    //正则邮箱
    static public function regularemail($string){
      $resultstr = preg_match("/^([0-9a-za-z\\-_\\.]+)@([0-9a-z]+\\.[a-z]{2,3}(\\.[a-z]{2})?)$/i",$string);
      if(intval($resultstr) == 1){
        return true;
      }
      else{
        return false;
      }
    }
     
    //正则验证身份证/(^([d]{15}|[d]{18}|[d]{17}x)$)/
    static public function regularidcard($string){
      $resultstr = preg_match("/(^([d]{15}|[d]{18}|[d]{17}x)$)/",$string);
      if(intval($resultstr) == 1){
        return true;
      }
      else{
        return false;
      }
    }
     
    //处理字符串信息
    static public function hstr($string){
      if(isset($string) && !empty($string)){
        return addslashes(strip_tags($string));
      }
      else{
        return "";
      }
    }
  }

以上所述就是本文给大家介绍的全部内容了,希望大家能够喜欢。