我可以将MD5 +后缀用于自定义长度的唯一ID吗?

时间:2015-11-16 11:11:05

标签: php hash md5 uuid

我想将它用于数据名称,例如

// Get the file
$file = open('abc.txt');

// Get MD5 Hash value from the file content
// It should be 32 length and Append 2 more(suffix)
$name = MD5_from_file($file) + 'AZ';

// Rename the file as $name
rename($file, $name)

// Then, the file name like this: 9E107D9D372BB6826BD81D3542A419D6AZ.txt

1 个答案:

答案 0 :(得分:0)

它更简单。使用sha1_file()而不是md5()。你真的不需要后缀,哈希值sha1被设计为唯一的并且依赖于具体文件。具有相同散列值的两个文件的可能性实际上是最小的,并且接近0将会得到。

<?php
$newName = sha1_file('abc.txt');
rename($file, $newName);
?>

sha1()的长度为40个字符。