2014-04-29 6 views
0

이것은 내가 순간에 가지고있는 것입니다.PHP 배열 루프에서 변수를 가져 오는 방법은 무엇입니까?

<?php 
    $name = ($row1[2]); 
    if($row1[45] == 1){ 
      echo("<td class='nameSelect'>$name</td>"); 
     } 
     else{ 
      echo("<td>$name</td>"); 
     } 
    ?> 

하지만 난 [2]는 $ ROW1은 $ ROW2로 변경할 [2], $ row3 [2] 등의 루프.

<?php 
    $r = mysqli_fetch_row($result); 
    for ($s = 0; $s < $r[4]; ++$s){ 

     $name = ($row1[2]); //Here are my problem 
     if($row1[45] == 1){ 
       echo("<td class='nameSelect' colspan='6'>$name</td>"); 
      } 
      else{ 
       echo("<td colspan='6'>$name</td>"); 
      } 
    }; 
    ?> 

어떻게 내가 $의 ROW1 [2]과 같이되기 위해 $의 작업을 어떻게해야합니까 ($ 행 $ S [2]) 은 가능합니까? 아니면 내 설정을 다시 생각해야합니까?

가져 오는 결과를
+5

곳'$에서 오는 row' 않습니다 확인? 나는 그것이 어디에도 선언 된 것을 보지 못한다 ... – giorgio

+2

'$ row [1] [2]'로 바꿀 수 있다면 더 쉬울 것이므로'$ row [$ s] [2]'를 할 수있다. 현재의 형식을 감안할 때, 현재 형식으로 찾고있는 것이'$ { 'row'. $ s} [2]'라고 생각합니다. – Sean

+1

셋업을 다시 생각해야 할 필요가 있다고 생각합니다. 불쾌감은 없지만 당신이 물었 기 때문에 이것은 쓰레기처럼 보입니다. –

답변

3

당신이 사용할 수 있습니다 자세한 내용은

<?php 
for ($s = 0; $s < $r[4]; ++$s) 
{ 
    $name = ${"row".$s}[2]; //Here is my problem 
    if (${"row".$s}[45] == 1) 
    { 
     echo "<td class='nameSelect' colspan='6'>$name</td>"; 
    } 
    else 
    { 
     echo "<td colspan='6'>$name</td>"; 
    } 
} 
?> 

Variable variables on php.net

+0

TY verry 많이 @Rsauxil – user3341623

+0

당신을 진심으로 환영합니다. – JohannesB

-2

사용 while :

<?php 
while($row1 = mysqli_fetch_row($result)) { 
    $name = $row1[ 2 ]; 
    if($row1[45] == 1) { 
    echo "<td class='nameSelect'>".$name."</td>"; 
    } else { 
    echo "<td>" . $name . "</td>"); 
    } 
} 
?> 
+0

downvotes 괜찮지 만, 설명의 비트가 좋을 것입니다! –

+1

나는 downvote하지 않았다 그러나 정직하기 위하여는, 어떤 설명없이이 응답은 진짜로 그/그녀의 문제 권리를 해결하지 않는다? 확실히이 코드는 잘못된 것을 시도하는 사람의 제품이라고 생각할 수 있습니다. 그러나 우리는 그것을 모릅니다. 어쩌면 이것은 이상한 시나리오입니다.이 for 루프는 정확히 이와 같이 필요하며 나중에 어떤 일이 일어나는지를 모르는 등등 ... 그래서 누군가가 downvoted 이유입니다. –

+1

나는 당신이 말하는 것을 얻습니다. 동일 업데이트 중. 내 아이디어는 OP가 전체 결과 세트를 살펴보기 위해 'while'루프를 사용하지 않고 내 게시물을 업데이트한다는 것을 추론하는 것이 었습니다. –

1
$temp = 'row1[2]'; // you can vari 1,2 with variable 

$another_row = $$temp; 
관련 문제