最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
base62_encode|base64_decode的P

完全參照J(rèn)ava 改寫了一版本PHP,希望能提供方便。

創(chuàng)新互聯(lián)從2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元彰武做網(wǎng)站,已為上家服務(wù),為彰武各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108

 5) {
            char c = encodes[val >> (pos -= 6)];
            sb.append(
            c == 'i' ? "ia" : (c == '+' ? "ib" :( c == '/' ? "ic" : c)));
            val &= ((1 << pos) - 1);
        }
    }
    if (pos > 0) {
        char c = encodes[val << (6 - pos)];
        sb.append(
           c == 'i' ? "ia" : (c == '+' ? "ib" :( c == '/' ? "ic" : c)));
    }
    return sb;
}
  */
	public static function base62_encode($data)
	{
		$sb = '';
		$len = strlen($data);
		$pos = $val = 0;
		for($i= 0; $i < $len; $i++){
			$tv = substr($data, $i, 1);
			$val = ($val << 8) | (ord($tv) & 0xFF);
			$pos += 8;
			while($pos > 5){
				$c = substr(self::$encodes, $val >> ($pos -= 6), 1);
				$sb .= $c == 'i' ? "ia" : (($c == '+') ? "ib" : (($c == '/') ? 'ic' : $c));
				$val &= ((1<<$pos) -1);
			}
		}
		if($pos > 0){
			$c = substr(self::$encodes, $val << (6 - $pos), 1);
			$sb .= ($c == 'i') ? "ia" : (($c == '+') ? "ib" : (($c == '/') ? 'ic' : $c));
		}
		return $sb;
	}

	/*
public static byte[] decodeBase62(char[] data) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream(data.length);
    int pos = 0, val = 0;
    for (int i = 0; i < data.length; i++) {
        char c = data[i];
        if (c == 'i') {
            c = data[++i];
            c =  c == 'a' ? 'i' :  (c == 'b' ? '+' :  (c == 'c' ? '/' : data[--i]));
        }
        val = (val << 6) | decodes[c];
        pos += 6;
        while (pos > 7) {
            baos.write(val >> (pos -= 8));
            val &= ((1 << pos) - 1);
        }
    }
    return baos.toByteArray();
}
	*/

	public static function base62_decode($data)
	{
		$baos = '';
		$pos = $val = 0;
		$len = strlen($data);
		for($i = 0; $i < $len; $i++){
			$c = substr($data, $i, 1);
			if($c == 'i'){
				$c = substr($data, ++$i, 1);
				$c = ($c == 'a') ? 'i' : ($c == 'b' ? '+' : ($c == 'c' ? '/' : substr($data, --$i, 1)));
			}
			$val = ($val << 6) | strpos(self::$encodes, $c);
			$pos += 6;
			while($pos > 7){
				$tv = ($val >> ($pos -= 8));
				//var_dump($tv);
				$baos .= chr($tv);
				$val &= ((1 << $pos) - 1);
			}
		}

		return $baos;
	}
}

foreach([1,2,3,'a','b', 'c', 'addddd', '111', 'fkdskfjdsljflsdjfljsaldkjflaskjfldskjlfkjdslkfjladskjfldsk'] as $v){
	var_dump($v);
	$b = Base62::base62_encode($v);
	var_dump($b);
	var_dump(base64_encode($v));
	var_dump(Base62::base62_decode($b));
	echo "----------------------\n";
}

網(wǎng)站標(biāo)題:base62_encode|base64_decode的P
文章來源:http://fisionsoft.com.cn/article/jsjgdh.html