php常用方法一

1.用户名用***替换
  /** * 用户名中间用***替换 * @param string $str 需要替换的字符串 * @param int $len 需要替换的位数 * @param string $replace 需要替换成的内容,一般是*** */ public static function substr_cut($str,$len=1,$replace='***') { $strlen = mb_strlen($str, 'utf-8'); if($strlen < 2 || $strlen <= $len) { return $str.$replace; } else { $first = mb_substr($str, 0, $len, 'utf-8'); $last = mb_substr($str, -$len, $len, 'utf-8'); return $first.$replace.$last; } }
2.ajax输出
  /**
     * 输出ajax数据
     * @param string $msg 错误或成功提示信息
     * @param boolean $status 状态
     * @param object | array | string $data 需要返回的数据
     * @param string $type 返回格式;默认json
     * @param string $callback js回调函数名,此参数不为空且类型为jsonp时返回jsonp
     * @return string | object  string JSON encoded object
     */
    public static function output($msg = null, $status = true, $data = null, $type = 'json', $callback = '') {
        $response = array();
        $response['status'] = $status;
        if ($msg !== null) {
            $response['msg'] = $msg; // 返回的提示信息
        }
        if ($data !== null) {
            $response['data'] = $data; // 返回的数据
        }
        if (($type == 'jsonp') && !empty($callback)) {
            echo $callback . '(' . json_encode( $response ) . ');';
        } else { // 输出 json 文本格式 
            echo json_encode($response);
        }
        Yii::app()->end();
    }
3.截取字符串用...
  /**
     * 截取字符串,大于指定长度的字符串在截取之后,会输出三个小点
     * @param string $string
     * @param int $length
     * @param string $encode
     * @return string
     */
    public static function substr( $string, $length, $encode="utf-8") {
        if ( mb_strlen( $string, $encode ) <= $length )
            return $string;
        
        $newString = mb_substr( $string, 0, $length, $encode );
        $newString .= '...';
        return $newString;
    }
4.随机产生uuid
        /**
     * 生成UUID编码
     */
    public static function uuid(){
        $chars = md5(uniqid(time().mt_rand(), true));
        $uuid  = substr($chars,0,8) . '-';
        $uuid .= substr($chars,8,4) . '-';
        $uuid .= substr($chars,12,4) . '-';
        $uuid .= substr($chars,16,4) . '-';
        $uuid .= substr($chars,20,12);
        return $uuid;
    }    
5.防止重复提交
  /**
     * 设置表单token,防止重复提交。
     * @param    $identify    唯一标记
     * @return     hash
     */
    public static function hash($identify = 'token') {
        $hash    = uniqid();
        Yii::app()->session->add($identify, $hash);
        return     $hash;
    }
    
    /**
     * 验证token码是否正确
     * @param    $hash
     * @param    $identify    唯一标记
     * @return    true|false
     */
    public static function checkHash($hash, $identify = 'token'){
        $result    = false;

        $sessionHash    = Yii::app()->session->get($identify);
        if (strnatcasecmp($sessionHash, $hash)===0) {
             $result    = true;
        }
        Yii::app()->session->remove($identify);
        return $result;
    }
原文地址:https://www.cnblogs.com/pengcz/p/5667814.html