-3

以下のスクリプトで 300 セットのランダムな文字を生成する方法を知りたいです。

これにより、リロード ボタンを 300 回押す必要がなくなります。

これが私のスクリプトです:

<?php

function GetID($x){     

$characters = array("A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "2", "3", "4", "5", "6", "7", "8", "9");

shuffle($characters);

for (; strlen($ReqID)<$x;){
$ReqID .= $characters[mt_rand(0, count($characters))];
}

return $ReqID;

}     


$ReqID .= GetID(5);
       $ReqID .= "-";
$ReqID .= GetID(9);
       $ReqID .= "-";
$ReqID .= GetID(5);

echo $ReqID;

$fh = fopen("300_file.txt","a+");

fwrite($fh, ("$ReqID")."\n");

fclose($fh);

?>

さらに、文字を配列として単純化する方法があれば、ボーナスになりますが、必須ではありません。

4

2 に答える 2

3

300 ループを実行するには、0-299 [300] の範囲で for を使用します。

for($l=0;$l<=299;$l++){
    $out[$l] = array_merge(range('A','Z'),range('a','z'),range(2,9));
}

結果の配列 $out は、キーとして 0 ~ 299 を持ち、値としてランダムな文字を持ちます。

これをファイルに保存する場合は、次のようにします。

$content = implode("\n", $out);

$content 文字列をファイルに保存します。

于 2012-06-06T02:05:44.110 に答える
1

配列を単純化する

array_merge(range('A','Z'),range('a','z'),range(2,9))

ループを使って洗い、すすぎ、300回繰り返す

于 2012-06-06T00:19:20.913 に答える