반응형
php 짧은 URL 생성
원리:
1.원래 주소를 crc로 한다.32 검사하여, 교정을 받다.코드를 검사하다.
2.스프린트 사용f('%u') 검사 코드를 부호 없는 숫자로 변환합니다.
3.부호 없는 숫자에 대하여 행하다잉여 62조작(대)소문자+숫자는 62자리)로 나머지를 얻어서 맵핑합니다.62자중 매핑된 문자를 저장합니다.(예를 들어 나머지가 10이면 매핑된 문자A, 0-9 대응 0-9, 10-35 대응 A-Z, 36-61 대응 a-z)
4.수까지 순환 동작값이 0이다.
5.맵핑된 모든 단어부적을 이어 붙이면, 바로 짧은 그물이다.주소 뒤에 있는 code.
코드는 다음과 같습니다.
/**짧은 URL 생성
* @param String $url 원본 URL
* @return String
*/
function dwz($url){
$code = floatval(sprintf('%u', crc32($url)));
$surl = '';
while($code){
$mod = fmod($code, 62);
if($mod>9 && $mod<=35){
$mod = chr($mod + 55);
}elseif($mod>35){
$mod = chr($mod + 61);
}
$surl .= $mod;
$code = floor($code/62);
}
return $surl;
}
demo:
<?php
echo dwz('http://blog.csdn.net/fdipzone'); //rs5U24
?>
반응형
'개발 꿀팁 > PHP' 카테고리의 다른 글
php 생성자가 다른 개수 매개 변수를 지원하는 방법 (0) | 2022.08.19 |
---|---|
C를 사용하여 php 확장 만들기 (0) | 2022.08.19 |
php soap 사용 사례 (0) | 2022.08.18 |
php unserialize false 해결 방법 반환 (0) | 2022.08.17 |
PDO 쿼리mysql을 사용하여 SQL 주입을 피함 (0) | 2022.08.17 |