0

MySQL データベースに存在しない小さな文字列を生成する PHP スクリプトを作成しようとしています。文字列が既に使用されている場合は、新しい番号を生成する必要があります。このスクリプトを使用して URL 短縮サービスを作成します。

4

2 に答える 2

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"; 

ここでの利点の 1 つは、(短縮された URL の代わりに) 各エントリの ID と URL を保存するだけでよいことです。

于 2013-06-29T09:40:57.013 に答える
0

Google の短縮 API を使用してみませんか? https://developers.google.com/url-shortener/

自分でやりたい場合は、本当にクールな (そして PHP 初心者にとっては簡単な) 実装があります - チュートリアルはこちら

于 2013-06-29T09:37:51.603 に答える