如何将数字组分成单独的行

时间:2012-06-06 04:54:10

标签: php newline

关于脚本:

下面的脚本将创建300个的随机字符。

目前正在发生的事情是,它创造了它们,但是在一条线上将它们全部显示在一个大块中。

经过我所做的所有搜索和测试,我都没有成功。

我想知道哪个代码和放在哪里,以便每个长度为15个字符的SET(300)将显示并保存到文件中。

这是我的剧本:

<?php

function GetID($x){

$characters = array_merge(range('A','Z'),range('a','z'),range(2,9));
shuffle($characters);


for($x=0;$x<=299;$x++){

}

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


return $ReqID;
}     

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


echo $ReqID;


$fh = fopen("file.txt","a+");
fwrite($fh, ("$ReqID")."\n");
fclose($fh);

?>

2 个答案:

答案 0 :(得分:1)

模运算符(%)将允许您定期检查。

for ($x = 0; $x <= 299; $x++) {
    echo $characters[$x];
    if ($x % 15 == 14) {
        echo "\n";
    }
}

答案 1 :(得分:1)

修改你GetID函数,每隔15个字符插入一个新行:

function GetID($x){
   $characters = array_merge(range('A','Z'),range('a','z'),range(2,9));
   shuffle($characters);
   $ReqID='';
   for ($i=0; strlen($ReqID)<300; $i++){
      $ReqID .= $characters[mt_rand(0, count($characters))];
      if ($i>0 && $i%15 == 0)
         $ReqID .= "\n";
   }
   return $ReqID;
}