2016-07-15 74 views
-2

我打印12循环以外的数字号码for循环。 while循环是12位数字,for循环将在diff数中重复四次。 所以我有这个号码将在for循环之外调用。以外的变量while循环使用php

for($i=1;$i<5;$i++){ 
    $active_id=''; 
    $count=0; 
    $active_code=''; 
    $myarray = array(); 
    while ($count < 12) { 
     $random_digit = mt_rand(0, 9); 
     $active_id .= $random_digit; 
     $count++; 
    } 
    echo $active_id; 
} 
+0

有什么问题? –

+0

我有外部for循环active_id打印12位数字 Napstar

+0

”; } ?> 我在for循环之外有active_id varible print .... – Napstar

回答

0
for($i=1;$i<5;$i++){ 
    $active_id=''; 
    $count=0; 
    $active_code=''; 

    while ($count < 12) { 
     $value .= mt_rand(0, 9); 
     $count++; 
     $active_id[$i] = $value; 
    } 
    unset($value); 
    $myarray[] = $active_id; 
} 
var_dump($myarray); 

它产生与每个数字具有12位数字的阵列。

0

你会得到一个很大的数字,因为你只是一个接一个的打印值。像这样做,反而:

$nums = array(); 
for($i = 1; $i < 5; $i++){ 
    $active_id=''; 
    $count=0; 
    while ($count < 12) { 
     $active_id .= mt_rand(0, 9); 
     $count++; 
    } 
    $nums[] = $active_id; 
} 
echo implode('<br>', $nums); 

输出是这样的:

 
547806804306 
795608578570 
440070793444 
942559796496 

你也可以使用一个循环显示值,就像这样:

foreach($nums as $v){ 
    echo $v . '<br>'; 
} 

的输出:

 
462186324671 
222725884540 
242904883364 
589742052131 

请注意,我删除了一些并非真正需要的变量。