테스트 사이트 - 개발 중인 베타 버전입니다

배열 출력 질문 드립니다. 채택완료

kujira 4년 전 조회 2,522

안녕하세요.

php로 반복문을 아래와 같이 돌렸습니다.

 

while($row = mysql_fetch_array($result)){         $array_mem = "{id: '".$row['id']."', name: '".$row['name']."', parent: '".$row['parent']."'},";     }

그리고 반복문 내에서 echo 를 찍으면 {id: '1000001', name: '001', parent: '0'},{id: '1000002', name: '002', parent: '1000001'},{id: '1000003', name: '003', parent: '1000001'},{id: '1000004', name: '004', parent: '1000001'},    {id: '1000005', name: '005', parent: '1000002'},

이런식으로 디비에 들어있는 내용 전체가 잘 출력이 됩니다.

 

그런데 이 $array_mem을 반복문 밖에서 호출하면 {id: '1000001', name: '001', parent: '0'}, 이거밖에 안찍혀서 while($row = mysql_fetch_array($result)){         $array_mem[] = "{id: '".$row['id']."', name: '".$row['name']."', parent: '".$row['parent']."'},";     }

이렇게 배열로 지정했습니다.

그리고 print_r을 찍으니 Array ( [0] => {id: '1000001', name: '001', parent: '0'}, [1] => {id: '1000002', name: '002', parent: '1000001'}, [2] => {id: '1000003', name: '003', parent: '1000001'}, [3] => {id: '1000004', name: '004', parent: '1000001'}, [4] => {id: '1000005', name: '005', parent: '1000002'}, [5] => {id: '1000006', name: '006', parent: '1000002'}, 

 

이렇게 나오는데요 제가 얻고 싶은 데이터는 

{id: '1000001', name: '001', parent: '0'},{id: '1000002', name: '002', parent: '1000001'},{id: '1000003', name: '003', parent: '1000001'},{id: '1000004', name: '004', parent: '1000001'},    {id: '1000005', name: '005', parent: '1000002'},

이런 데이터 거든요.....어떻게 하면 이렇게 출력되도록 할 수 있을까요?

 

 

 

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

답변 1개

채택된 답변
+20 포인트
4년 전

while($row = mysql_fetch_array($result)){

  $array_mem[] = "{id: '".$row['id']."', name: '".$row['name']."', parent: '".$row['parent']."'}";

}</p>

<p>$str = implode(',', $array_mem);

echo $str;

 

Or

 

$str = "";

while($row = mysql_fetch_array($result)){

  $str .= "{id: '".$row['id']."', name: '".$row['name']."', parent: '".$row['parent']."'},";

}</p>

<p>echo rtrim($str, ',');

로그인 후 평가할 수 있습니다

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

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

로그인