PHP常用处理静态操作类


Posted in PHP onApril 03, 2015

详细一个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 "";
      }
    }
  }

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

PHP 相关文章推荐
PHP函数utf8转gb2312编码
Dec 21 PHP
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
Sep 09 PHP
php环境配置之CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI比较?
Oct 17 PHP
PHP COOKIE及时生效的方法介绍
Feb 14 PHP
PHP中的魔术方法总结和使用实例
May 11 PHP
深入解析PHP的Laravel框架中的event事件操作
Mar 21 PHP
Smarty环境配置与使用入门教程
May 11 PHP
PHP迭代器接口Iterator用法分析
Dec 28 PHP
PHP代码重构方法漫谈
Apr 17 PHP
PHP使用phpunit进行单元测试示例
Sep 23 PHP
THINKPHP5分页数据对象处理过程解析
Oct 28 PHP
PHP的重载使用魔术方法代码实例详解
Feb 26 PHP
php使用post数组的键值创建同名变量并赋值的方法
Apr 03 #PHP
php删除指定目录的方法
Apr 03 #PHP
php实现递归抓取网页类实例
Apr 03 #PHP
php调整服务器时间的方法
Apr 03 #PHP
php实现图片转换成ASCII码的方法
Apr 03 #PHP
php解析字符串里所有URL地址的方法
Apr 03 #PHP
php对文件进行hash运算的方法
Apr 03 #PHP
You might like
PHP迭代器实现斐波纳契数列的函数
2013/11/12 PHP
thinkPHP3.2使用RBAC实现权限管理的实现
2019/08/27 PHP
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
2013/04/02 Javascript
js的2种继承方式详解
2014/03/04 Javascript
JS常用字符串处理方法应用总结
2014/05/22 Javascript
Nodejs Post请求报socket hang up错误的解决办法
2014/09/25 NodeJs
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
JavaScript编程中window的location与history对象详解
2015/10/26 Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
2016/11/10 Javascript
javascript 闭包详解及简单实例应用
2016/12/31 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
2017/07/17 jQuery
Angular之toDoList的实现代码示例
2017/12/02 Javascript
React Navigation 使用中遇到的问题小结
2018/05/08 Javascript
深入剖析Node.js cluster模块
2018/05/23 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
vue中的过滤器实例代码详解
2019/06/06 Javascript
微信小程序点击view动态添加样式过程解析
2020/01/21 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
[02:47]2018年度DOTA2最佳辅助位选手4号位-完美盛典
2018/12/17 DOTA
Python自动化测试ConfigParser模块读写配置文件
2016/08/15 Python
Python编程判断一个正整数是否为素数的方法
2017/04/14 Python
Zookeeper接口kazoo实例解析
2018/01/22 Python
python实现nao机器人手臂动作控制
2019/04/29 Python
如何将你的应用迁移到Python3的三个步骤
2019/12/22 Python
Pycharm中切换pytorch的环境和配置的教程详解
2020/03/13 Python
美国著名的品牌折扣店:Burlington
2017/06/08 全球购物
Oakley西班牙官方商店:太阳眼镜和男女运动服
2019/04/26 全球购物
如何写毕业求职自荐信
2013/11/06 职场文书
民主评议党员工作总结
2014/10/20 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
加薪通知
2015/04/25 职场文书
初中团委工作总结
2015/08/13 职场文书
基于Golang 高并发问题的解决方案
2021/05/08 Golang
Java使用Unsafe类的示例详解
2021/09/25 Java/Android
SQL基础查询和LINQ集成化查询
2022/01/18 MySQL
SpringBoot详解整合Redis缓存方法
2022/07/15 Java/Android