채택완료

유동 변수에 관한 질문 입니다.

2020-04-07 (화) 08:58:39 1,964

$num=array(
    array('1','2','3','4'),
    array('1','5','6','7'),
);

$txt1="a";

$txt2="b";

$txt3="c";

$txt4="d";

$txt5="e";

$txt6="f";

$txt7="g";

for($i=0;$i<3;$i++){

   for($j=0;$j<5;$j++){

     echo $txt[$i][$j];

 }

  echo "<br>";

}

하면 

1234

1567

은 표현이 되는데

얻고자 하는 결과는

abcd

aefg

입니다.

유동 변수로 1차원 배열은 하면 가능하는데,

2차원 배열을 유동 변수로 하는 방법을 모르겠습니다.

고수님들의 의견 부탁드립니다.

|

답변 3개

채택된 답변
+20 포인트

아무래도 원하시는 형태는

Copy
$num = array(
    array('1','2','3','4'),
    array('1','5','6','7'),
    array('1','4','3','2')
);
$txt1="a";
$txt2="b";
$txt3="c";
$txt4="d";
$txt5="e";
$txt6="f";
$txt7="g";
for ($i=0; $i < 3; $i++) {
    for ($j=0; $j < 4; $j++) {
        echo ${"txt".$num[$i][$j]};
        echo "<br>";
    }
}

로 해보세요

샘플 https://www.deb.kr/test/arr2.php

이렇게 간단하게 해결하는 방법을 모르고 복잡하게 해결 하고 있었습나다.

먼저 보내 주신 해결방법을 채택 합니다.

두 분 모두 매우 감사 드립니다.

Copy
$num=array(

        array('1','2','3','4'),

        array('1','5','6','7'),

    );

    

    $txt1="a";

    $txt2="b";

    $txt3="c";

    $txt4="d";

    $txt5="e";

    $txt6="f";

    $txt7="g";

    

    for($i=0;$i<count($num);$i++){

       for($j=0;$j<count($num[$i]);$j++){

        //   echo ${"txt".$i[$j]};

          echo ${"txt".$num[$i][$j]};

        }

      echo "<br>";

    }

답변을 작성하려면 로그인이 필요합니다.