Search

Perbedaan "mysql_fetch_array, mysql_fetch_assoc dan mysql_fetch_row"

Bagi anda programmer PHP, pasti tidak asing lagi dengan mysql_fetch_array mysql_fetch_assoc dan mysql_fetch_row? Jika anda belum mengetahuinya berikut ini adalah penjelasan mengenai ketiga fungsi di atas.
Ketiga fungsi diatas memiliki tujuan yang sama yaitu menampilkan data dari tabel dalam bentuk array. Namun berikut ini adalah perbedaan di antara ketiga nya:

mysql_fetch_array:

mysql_fetch_array digunakan untuk menghasilkan array dari tabel dalam bentuk associative array dan/atau numeric array. Berikut ini adalah contoh output dari mysql_fetch_array.
Array
(
[0] => 1
[id_skep] => 1
[1] => KEP-01/HC/2014
[no_skep] => KEP-01/HC/2014
[2] => 2014-12-28
[tgl_skep] => 2014-12-28
)

Untuk mengaksesnya kita bisa menuliskan $nama_array[nama_field] atau $nama_array[urutan_array]. Misalnya $data[id_skep] atau $data[0]
Kita bisa juga mengatur type output dari mysql_fetch_array dengan menambahkan parameter kedua yaitu : MYSQL_ASSOC, MYSQL_NUM atau  MYSQL_BOTH.
mysql_fetch_array($query, MYSQL_ASSOC);
mysql_fetch_array($query, MYSQL_NUM);
mysql_fetch_array($query, MYSQL_BOTH)

Secara default akan digunakan  MYSQL_BOTH. Jika kita menambahkan  MYSQL_ASSOC maka outpunya akan sama dengan mysql_fetch_assoc dan jika menggunakan MYSQL_NUM outpunya sama dengan mysql_fetch_row.

mysql_fetch_assoc

mysql_fetch_assoc digunakan untuk menghasilkan array dari tabel hanya dalam bentuk associative array. Berikut ini adalah contoh output dari mysql_fetch_assoc.
Array
(
[id_skep] => 1
[no_skep] => KEP-01/HC/2014
[tgl_skep] => 2014-12-28
)

Untuk mengaksesnya kita hanya bisa menuliskan $nama_array[nama_field] Misalnya $data[id_skep]

mysql_fetch_row

mysql_fetch_row digunakan untuk menghasilkan array dari tabel hanya dalam bentuk numeric array. Berikut ini adalah contoh output dari mysql_fetch_row.
Array
(
[0] => 1
[1] => KEP-01/HC/2014
[2] => 2014-12-28
)

Untuk mengaksesnya kita hanya bisa menuliskan $nama_array[urutan_array]. Misalnya $data[0]
Dari penjelasan diatas terlihat jelas bahwa mysql_fetch_array (default) menghasilkan data yang lebih banyak dibandingkan mysql_fetch_assoc ataupun mysql_fetch_row. Jika anda hanya menggunakan nama field untuk menampilkan data, ada baiknya anda menggunakan mysql_fetch_assoc dari pada mysql_fetch_array sehingga tidak ada output yang terbuang percuma.

No comments:

Post a Comment