2016-07-15 3 views
-2

for 루프 외부에 12 자리 숫자를 인쇄했습니다. while 루프는 12 자리 숫자이고 for 루프는 diff 숫자로 4 회 반복됩니다. 그래서이 번호는 for 루프 외부에서 호출됩니다.변수 밖에서 for 루프를 사용하여 루프

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

전 루프 위한 active_id 외부 잉크 12 자리 숫자가 Napstar

+0

"; } ?> for 루프 외부에 active_id 가변 인쇄가 있습니다 .... – 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

방금 ​​값을 인쇄하기 때문에 숫자가 커집니다. 또한 지금과 같은 값을 표시하기 위해 루프를 사용할 수 있습니다

 
547806804306 
795608578570 
440070793444 
942559796496 

: 대신에, 이런 식으로 작업을 수행합니다

$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); 

출력 무언가 같이

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

을 출력 :

 
462186324671 
222725884540 
242904883364 
589742052131 

필자는 실제로 필요하지 않은 몇 가지 변수를 제거했습니다.