在PHP中将唯一整数转换为唯一字符串

时间:2019-10-22 11:51:52

标签: php string

是否可以将唯一的数字(例如12位数字)转换为相同长度的唯一字母代码?

因此,如果我使用日期来生成唯一的ID号:

id = date("Hsdmiy"); = 125522104519

例如,我想将其复制为hruurrhxiuhn

可能使用:

new_id = ( [?],$id );

? =某些转换公式。

new_id必须与数字id一样唯一

有什么想法如何在PHP中创建它吗?

2 个答案:

答案 0 :(得分:0)

正如我在评论中所说,我不建议这样做,但是您可以使用以下代码:

echo implode('', array_map(function($x) { return chr(97+$x); }, str_split('125522104519')));

解释:

echo 
  implode( //implode array of strings to the one string
    '', 
    array_map( //for each char in your array of digits call function:
       function($x) { return chr(97+$x); }, // return char a-j
       str_split('125522104519') //split string to array
    )
  );

答案 1 :(得分:0)

简单的字符串替换:

$new_id = str_replace(range(0, 9), range('z', 'q'), $id);

您可以将range('z', 'q')替换为任何内容。另一个范围或数组['x', 'h', 'r' . . .]或其他任何内容。