PHP常用处理静态操作类,PHP统一页面编码避免乱

作者: 新金沙平台  发布:2019-07-17

页面编码统一

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

本文实例讲述了CodeIgniter删除和设置Cookie的方法。分享给大家供大家参考。具体如下:

MySQL数据库编码、html页面编码、PHP或html文件本身编码要全部一致。

<?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 "";
      }
    }
  }
$cookie = array(
  'name'  => 'loggedin',
  'value' => 'yes',
  'expire' => '86500',
  'domain' => '.apol0829.dev',
  'prefix' => 'apollidon_'
  );
set_cookie($cookie);


$cookie = array(
  'name'  => 'loggedin',
  'value' => '',
  'expire' => '0',
  'domain' => '.apol0829.dev',
  'prefix' => 'apollidon_'
  );
delete_cookie($cookie);

1、MySQL数据库编码: 建立数据库时指定编码(如gbk_chinese_ci),建立数据表、建立字段、插入数据时不要指定编码,会自动继承数据库的编码。
数据库连接时,也有编码,可以在连接完数据库后,执行mysql_query(‘SET NAMES gbk');//将gbk换成你的编码,如utf8。

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

希望本文所述对大家基于CodeIgniter框架的php程序设计有所帮助。

2、html页面的编码,指的是这一行的设置:

您可能感兴趣的文章:

  • PHP常用操作类之通信数据封装类的实现

您可能感兴趣的文章:

  • CI(CodeIgniter)框架中的增删改查操作
  • CI框架数据库查询缓存优化的方法
  • CI框架数据库查询之join用法分析
  • CI框架AR数据库操作常用函数总结
  • CI框架出现mysql数据库连接资源无法释放的解决方法
  • CI框架中数据库操作函数$this->db->where()相关用法总结
  • CI配置多数据库访问的方法
  • CI框架入门示例之数据库取数据完整实现方法
  • php中CI操作多个数据库的代码
  • 新浪SAE云平台下使用codeigniter的数据库配置
  • codeigniter数据库操作函数汇总
  • codeigniter自带数据库类使用方法说明
  • CodeIgniter框架基本增删改查操作示例

复制代码 代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=gbk" />

3、PHP或html文件本身的编码: 用editplus打开php文件或html文件,另存时,选择的编码,如果数据库和页面编码是gbk,则这儿的编码选择ansi;如果数据库和页面编码是utf-8,则这儿也选择utf-8。

4、Javascript或Flash中传递的数据是utf-8编码:

本文由新金沙平台发布于新金沙平台,转载请注明出处:PHP常用处理静态操作类,PHP统一页面编码避免乱

关键词: 新金沙平台