对于日常工作中整理出来的某些功能做个简单梳理:
1. 短链生成算法
function code62($x) {
$show = '';
while($x > 0) {
$s = $x % 62;
if ($s > 35) {
$s = chr($s+61);
} elseif ($s > 9 && $s <=35) {
$s = chr($s + 55);
}
$show .= $s;
$x = floor($x/62);
}
return $show;
}
function shorturl($url) {
$url = crc32($url);
$result = sprintf("%u", $url);
//return $url;
//return $result;
return code62($result);
}
br( shorturl("http://pai.game.weibo.com/love/") );
br( shorturl("http://www.oschina.net/code/snippet_878945_22499") );
2. 比较字符串差异:
levenshtein()
你有没有经历过需要知道两个单词有多大的不同的时候,这个函数就是来帮你解决这个问题的。它能比较出两个字符串的不同程度。
用法:
<?php
$str1 = "carrot";
$str2 = "carrrott";
echo levenshtein($str1