2012-05-06 2 views
1
$cust = rand(50,100); 
$minutes = rand(200,2500); 
$minutesarr = array(); 
function minutesTable() 
{ 
     global $cust,$i,$minutes,$minutesarr; 
     for ($i = 0; $i <= $cust; $i++) 
     { 
      array_push($minutesarr,$minutes); 

     }   
} 

심지어 $minutesarr[$i] = $minutes;을 사용하고 싶지만 이상하게 신비스럽지 않습니다.for 루프에서 Array_push()가 작동하지 않습니다

편집 : Whoops 스레드에 $ cust 변수를 추가하는 것을 잊었습니다. 혼란을 피하기 위해 거기에 추가하겠습니다. $cust 값이 선언되지 않기 때문에

+6

'$의 cust'의 값이 때이 무엇을 실행하는 것 :


현재 코드에 확장 귀하의 코멘트

에 대답하려면? 루프가 실행되고 있습니까? – Wiseguy

+0

루프가 루핑되지 않습니다. –

답변

2

하나는 일이되어야합니다 너 멋장해야 해.

또한 변수마다 $minutes 변수에 모든 루프에 대해 다른 숫자가 포함되어 있지만 현재 코드에는 포함되지 않습니다. 새로운 번호를 얻으려면 루프마다 rand 함수를 다시 실행해야합니다.

$cust = rand(50,100); 
$minutesarr = array(); 
function minutesTable() 
{ 
     global $cust, $minutesarr; 

     for ($i = 0; $i <= $cust; $i++) 
     { 
      $minutes = rand(200,2500); 
      array_push($minutesarr, $minutes); 
     } 
} 

// RUN the function :-P 
minutesTable(); 
+0

그래, 내가 그 일을 어떻게하면 안 될까? – mwong

+0

+1, 루프를 실행할 때마다 매 통화마다 다른 값을 갖기 위해 $ 분을 계산하면됩니다. – Saturnix

+1

* facepalm * 물론 ...이 기능을 실행하는 것을 잊어 버렸습니다. 고마워요! – mwong

2

, 루프도 검사 할 경우

은, 루프를

다음 시간을 시작하기 전에

$cust = some number 

선언 ... 시작되지 않는다 루프가 실행 중이면 로그 메시지 (또는 프로그래밍 언어에서 디버깅을 위해 수행 할 수있는 모든 것)를 넣고 코드를 실행 한 다음 호출되었는지 여부를 확인하십시오. 이 기능은 실행되지 않습니다

  1. $cust
  2. $cust
  3. 가 1보다 작은

그래서 위의 수정/확인입니다 선언되지 않습니다 : 다음의

+0

예 예제 코드에 $ cust를 넣는 것을 잊었습니다. 내 잘못이야. 나는 그것을 내 코드에 원래 가지고 있었다. – mwong

+0

오 코드를 업데이트했습니다. 자, 루프가 시작되지 않아야하는 유일한 이유는 (Codemonkey에서 언급 한) minutesTable() 함수를 실행하지 않는다는 것입니다. – Saturnix

관련 문제