0

私は md5 についてあまり知らないので、詳しくはわかりません。私の画像ホスティング サイトでは、画像をアップロードすると、自動的にこの長い md5 名が付けられます。短くするにはどうすればいいですか?名前は次のようになります: 786a350023162842f7bb879bcc9aa560 次のようにする必要があります: zl34s3

コードは次のとおりです。

//set the file name
            $filename = $file_array['name'][$i];
            $extension = get_file_extension($filename);
            $new_file_name = 'original-' .md5(rand(1000, 9999999) . $filename). '.' . $extension;

私が使用する別のシステムはどうですか?そこにあるの?

4

3 に答える 3

0

そのようには機能しません.MD5はハッシュです.サイズを選択しません! 独自の like 関数を作成して、チェックサムを作成できます。部分文字列機能でMD5のかけらが取れます!

于 2013-07-13T04:03:43.000 に答える
0

substrを使用して、最初の 6 文字を切り取ります。md5

substr(md5(rand(1000, 9999999)), 0, 6);

デモ

編集

$new_file_name = 'original-' .substr(md5(rand(1000, 9999999)), 0, 6) . $filename . '.' . $extension;
于 2013-07-13T04:04:56.523 に答える
0

たとえば、ユーザー名とタイムスタンプを名前の一部として使用するなど、別の命名スキームを使用します。または、ユーザーごとに個別のサブディレクトリを使用して、タイムスタンプを名前に入れるだけです。無限の可能性があります。

于 2013-07-13T04:08:48.443 に答える