[PHP] mysql_fetch_array,row
php문을 작성할 때 select문을 이용해 mysql데이터를 요청한 후에 mysql_fetch_array나
mysql_fetch_row 함수를 사용해 데이터를 배열 형태로 가져올 수 있다. 이 함수들은 데이터를 배열의 형태로 출력한다.
0번째 인덱스($row[0])는 밑에 있는 테이블에서 no를 가리키고, 1번째 인덱스($row[1])는 id를 가리킨다. 당연히 2번째 인덱스($row[2])는 name을 가리킨다.
NO |
id |
name |
1 |
money |
kim |
2 |
bubble |
lee |
3 |
apple |
park |
4 |
cat |
choi |
php에서 테이블의 no와 id를 가져오고 싶다.
<?php
$result=mysql_query("select no,id from webTB");
while($row=mysql_fetch_row($result)){
echo "no:".$row[0];
echo "id:".$row[1];
}
?>
결과로
no:1 id:money
no:2 id:bubble
no:3 id:apple
no:4 id:cat
이 출력된다.
그럼 mysql_fetch_array함수는 어떻게 사용할까.
<?php
$result = mysql_query("select no,id from webTB");
while($array = mysql_fetch_array($result)){
echo "no:".$row[no];
echo "id:".$row[id];
}
?>
결과로
no:1 id:money
no:2 id:bubble
no:3 id:apple
no:4 id:cat
위와 같이 mysql_fetch_array는 매개변수로 테이블의 column을 반환해준다.
row는 숫자로 전달하기 때문에 column의 순서를 모를 경우 헷갈릴 수 있지만
array는 원하는 column을 반환할 수 있어 편하다.
다음과 같은 방법으로 array도 숫자로 반환할 수 있다.
$array=mysql_fetch_array($result,MYSQL_NUM);
기본적으로 MYSQL_NUM대신 MYSQL_ASSOC이 기본값으로 들어간다. 즉, ASSOC이 column으로 반환하는 방법이다.
또한 MYSQL_BOTH를 사용하면 숫자와 column을 동시에 반환할 수 있다.