我正在尝试创建一个PHP脚本,该脚本生成一个在MySQL数据库中不存在的小字符串。如果字符串已经在使用中,我希望它生成一个新数字。我将使用该脚本来缩短URL。
答案 0 :(得分:0)
为什么不使用谷歌的缩短API? https://developers.google.com/url-shortener/
如果你想自己做,有一个非常酷的(对PHP初学者来说很简单)实现 - 教程here
答案 1 :(得分:0)
您可以在数据库中使用自动增量来为所有条目分配唯一ID。然后,您将获取此ID并将其转换为更高的基数(我假设使用php的base_convert
)。例如,您可以使用base 62(最佳使用字母数字字符)。一些示例代码:
<?php
$id = getId(); // Depending on the database interface you're using (eg. PDO)
$short_suffix = base_convert($id, 10, 62); // From base 10 to base 62
$short_url = "http://yourwebsite.tld/$short_suffix";
这里的一个优点是你只需为每个条目存储一个id和一个url(而不是缩短的URL)。