如何在php中生成最短的字符串? [复制]

Posted

技术标签:

【中文标题】如何在php中生成最短的字符串? [复制]【英文标题】:how to generate shortest possible string in php? [duplicate] 【发布时间】:2011-06-18 02:18:09 【问题描述】:

可能重复:How to code a URL shortener?

如何生成尽可能短的字符串(例如 bit.ly 这样做的方式)?

【问题讨论】:

这是一个非常笼统的问题...更具体;-)。 $shortestPossibleString = ''; 你要哈希算法吗? 【参考方案1】:

你必须创建随机字符串,然后检查你的数据库中是否有它!在这里我给你写一个例子。顺便提一句。这只是一个快速的。还有更多的事情可以检查以加快速度!

$cl=2;
$cr=0;
$n="";
while(!$e)
  if($cr>500)$cr=0;$cl++;
  $n=genRandomString($cl);
  $checker = mysql_query("select count(*) as haveit from table where thestring='".$n."'");
  $xa = mysql_fetch_array($checker);
  if($xa['haveit']==0)$e=1;
  $cr++;


function genRandomString($len)
    $length = $len;
    $characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    $string = '';
    for ($p = 0; $p < $length; $p++) 
        $string .= $characters[mt_rand(0, strlen($characters))];
    
    return $string;

这只是为了让你知道如何去做!这必须优化一点! :D

【讨论】:

以上是关于如何在php中生成最短的字符串? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

用php计算字符串中大写字母的最简单、最短的方法?

如何在c程序中找到最长和最短的字符串?

如何将整数转换为 Python 中最短的 url 安全字符串?

在 php 中生成唯一 id(用于 url 缩短器)

如何从ArrayList(Java)打印最短的字符串

如何使用正则表达式找到最短的重叠匹配?