我不知道perl语言,但我正在尝试自定义用perl语言编写的应用程序。我想知道以下perl代码的逻辑或含义。我知道这段代码用于生成随机字符串,但我想要它的详细信息,即我想知道如何在PHP中生成相同的随机字符串?请有人给我这个perl代码的PHP代码!!
sub generate_rand_string {
#warn "generate_rand_string";
my $chars = shift
|| 'aAeEiIoOuUyYabcdefghijkmnopqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ23456789';
my $num = shift || 1024;
require Digest::MD5;
my @chars = split '', $chars;
my $ran;
for ( 1 .. $num ) {
$ran .= $chars[ rand @chars ];
}
return Digest::MD5::md5_hex($ran);
}
请有人帮助我!!!!
答案 0 :(得分:1)
模拟步骤:
aAeEiIoOuUyYabcdefghijkmnopqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ23456789
提供了字符串1024
答案 1 :(得分:0)
在PHP中它想要这样:
function generate_rand_string($chars = null, $length = 1024) {
if($chars == null) {
$chars = 'aAeEiIoOuUyYabcdefghijkmnopqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ23456789';
}
$rand = '';
for($i = 0; $i < $length; $i++) {
$rand .= $chars[ rand(0, strlen($chars) - 1) ];
}
return md5($rand);
}