。공부 。

<PHP>DB 데이터 추출 함수

kyoe 2007. 11. 8. 23:52
PHP 에서 데이터 베이스값을 추출하기위해서 많이 쓰이는 함수는 3가지 정도가 있다.
mysql_fetch_row(),  mysql_fetch_array(), mysql_result();
이렇게 세가지가 있다 각함수는 접근하는 방식도 다르지만 접속속도 역시 차이가 있다 .
빠른순으로 나열하면 아래와같다 좌측에 있는 mysql_fetch_row()가 가장 빠르다.
mysql_fetch_row() -> mysql_fetch_array() -> mysql_result();
mysql_fetch_row(),mysql_fetch_array() 함수는 순환문을 이용해서 매순환시마다 하나의 레코드를 패치해 올수있다.

* mysql_fetch_row() *
mysql_fetch_row() 함수는 결과값접근시 배열의 키값으로 접근을 하며 배열의 키값은 숫자만을 갖는다.
순환문을 이용해서 매순환시마다 하나의 레코드를 패치해 올수있다.
아래예제는 간단히 한개의 레코드만을 추출한다.
$data = mysql_fetch_row(mysql_query("select name from board where num=1;"));
echo 'data의 값 ='.$data[0];
예) $data[0],$data[1]...

* mysql_fetch_array() *
mysql_fetch_array() 함수는 결과값접근시 배열의 키값을 숫자키 또는 필드명으로도 접근할수있다.
$data = mysql_fetch_array(mysql_query("select name from board where num=1;"));
echo 'data 번호로 접근 ='.$data[0];
echo 'data 필드명으로 접근 ='.$data['name'];
위와같이 출력하면 $data[0],$data['name']는 같은 값을 출력한다.

* mysql_result() *
mysql_result()함수는 결과값 접근시 row와 field번호로 접근한다.
$query =mysql_query("select num,name from board;");
$data = mysql_result($query,row,field);

- 쿼리 결과는 아래와 같다고 예를들자.
    row     field
+---------------+
|  num  |  name  |   
+---------------+
|    1    |  kyoe1  |   <- row1
|    2    |  kyoe2  |   <- row2
+---------------+

- mysql_result()함수를 실행했을때 결과
mysql_result($query,0,0)   ---> ' 1 '
mysql_result($query,0,1)   ---> ' kyoe1 '
mysql_result($query,1,0)   ---> ' 2 '
mysql_result($query,1,1)   ---> ' kyoe2 '