> 백엔드 개발 > PHP 튜토리얼 > php生成短网址

php生成短网址

WBOY
풀어 주다: 2016-06-23 13:33:49
원래의
820명이 탐색했습니다.

<?php/** * Created by PhpStorm. * User: yangyulong/anziguoer@sina.com * Date: 2015/5/28 * Time: 15:55 */function shortUrl($url){    $base32 = array (        'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',        'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',        'q', 'r', 's', 't', 'u', 'v', 'w', 'x',        'y', 'z', '0', '1', '2', '3', '4', '5'    );    $hex = md5($url);    $hexLength = strlen($hex);    $subHexLen = $hexLength / 8;    $output = array();    for ($i = 0; $i < $subHexLen; $i++) {        //每循环一次取到8位        $subHex = substr ($hex, $i * 8, 8);        $int = 0x3FFFFFFF & (1 * ('0x'.$subHex));        $out = '';        for ($j = 0; $j < 6; $j++) {            $val = 0x0000001F & $int;            $out .= $base32[$val];            $int = $int >> 5;        }        $output[] = $out;    }    return $output;}function shortUrl2($url){    $result = sprintf("%u",crc32($url));    $show = '';    while($result  >0){        $s = $result % 62;        if($s > 35){            $s=chr($s+61);        }elseif($s>9 && $s<=35){            $s=chr($s+55);        }        $show .= $s;        $result = floor($result / 62);    }    return $show;}echo shortUrl2('http://baidu.com');
로그인 후 복사


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿