2011-09-19 5 views
0

PHP 인스턴스에 mysql_query 인스턴스가 여러 개 있습니다. 거의 모든 사람들이 while 루프를 사용하여 여러 행의 데이터를 검색합니다. 심지어여러 PHP 'while` 루프에서 동일한 변수 사용

while ($row = mysql_fetch_assoc($foo_data)) { 
    $barArray[] = $row['barValue']; 
} 

내가 :

나는이 자주 사용하는 코드의 조각을 유지로서, 나는이 함께 배웠습니다 예는, 변수 $row, 나는 내 페이지에 다음의 여러 인스턴스를 사용 $row = mysql_fetch_assoc($foo_data)의 인스턴스는 a while 루프가 없습니다.

단일 페이지에서 변수로 $row을 여러 번 사용하는 것이 궁금합니다.

PHP는 정상적으로 작동하지만, 항상 내 코드가 적절하고 표준 규칙을 준수하는지 확인하고 싶습니다.

감사합니다.

답변

2

네, 괜찮습니다. 하지만 당신은 시도 할 경우 :

var_dump($row); 

코드의 끝에서 - 그것은 단지 모든 $row

+0

그래서'$ row'를 사용하면 이전에 사용 된 적이 있다면 이전 값을 새 값으로 덮어 쓰는 것입니다. 덮어 쓰고있는 값이 이전의'while' 루프 내에 포함 된 모든 작업에서 이미 사용 되었기 때문에 이것은 괜찮습니다. 어쩌면 웅변하지 않을 수도 ... – stefmikhail

+0

이전 while 루프는 ** over **입니다. PHP가 순서대로 실행됩니다. – Neal

+0

정확합니다. 훌륭한. 그리고 많이 감사합니다! – stefmikhail

2

그래,하지의 문제로 마지막 값을 반환합니다.

그냥 항상 for 루프에서 카운트로 $i를 사용하는 것처럼, 당신은 반복적으로 어떤 병에 효과 $row를 사용할 수 있습니다.

+0

우수. 무리 감사! – stefmikhail

3

네, 괜찮습니다.
수프를 먹을 때 같은 숟가락을 사용하는 것이 좋습니다.

+0

굉장한 비유! ;) – stefmikhail

+0

'+ 1'은 유추를 좋아합니다^_^ – Neal

+0

하지만 먼저 모든 수프를 핥아주십시오. – Hammerite

관련 문제