MASIGNCLEAN102

Perbedaan mysqli_fetch_assoc, mysqli_fetch_array, dan mysqli_fetch_row pada PHP


Perbedaan mysqli_fetch_assoc, mysqli_fetch_array, dan mysqli_fetch_row pada PHP - Halo semua, pada kesempatan kali ini kita akan membahas apa sih perbedaan antara mysql_fetch_assoc , mysql_fetch_array , dan mysql_fetch_row pada saat pengambilan data di pemrograman PHP. Mungkin ketiga hal ini bukanlah hal asing bagi kalian yang sudah pernah membuat aplikasi CRUD dengan PHP sebelumnya. Pasti dulu saat pertama kali belajar CRUD di PHP, kita belum tau bagaimana cara mengambil data dari database sampai kita menemukan fungsi – fungsi di atas. Sebelum melangkah lebih jauh di pemrograman PHP baik native maupun framework yang notabene tidak memerlukan fungsi ini. Baiknya kita ketahui dulu hal dasar perbedaan Fetch array assoc dan row pada saat pengambilan data di PHP.

Baca Juga : Tutorial Lengkap Membuat CRUD di Codeigniter 3

Kita mulai artikel ini dengan sedikit penggambaran tabel yang saya punya di database kali ini. Saya mempunyai table dengan nama tb_siswa dengan data sebagai berikut :


Mysql_Fetch_array

mysqli_fetch_array berguna untuk mengambil data dengan hasil array associative dan numeric. Jadi, terdapat dua jenis key yang dapat kita pakai dengan menggunakan fungsi ini.

Untuk mengambil data dapat menggunakan kode script seperti berikut :

<?php
 include('koneksi.php');
 
 $sql       = "SELECT * FROM tb_siswa";
 $query     = mysqli_query($conn,$sql);
 
 while($row = mysqli_fetch_array($query)){
    echo "<pre>";
    print_r($row);
 
 } exit();
 
 
?>
Hasilnya seperti di bawah :
 
Array
(
    [0] => 1
    [noinduk] => 1
    [1] => Alfansyah
    [nama] => Alfansyah
    [2] => Jalan Merdeka
    [alamat] => Jalan Merdeka
    [3] => Bermain Bola
    [hobi] => Bermain Bola
)
Array
(
    [0] => 2
    [noinduk] => 2
    [1] => Wawan Aja
    [nama] => Wawan Aja
    [2] => Jalan Kebenaran
    [alamat] => Jalan Kebenaran
    [3] => Mancing
    [hobi] => Mancing
)

Untuk menentukan jenis key ( associative / numeric ) yang akan dihasilkan dengan fungsi mysqli_fetch_array ini dapat mengisikan parameter kedua. Seperti :

mysqli_fetch_array($result , MYSQL_ASSOC)
  • MYSQL_ASSOC
  • MYSQL_NUM
  • MYSQL_BOTH 

Mysqli_fetch_assoc

mysqli_fetch_assoc berguna untuk menghasilkan data array dengan key associative. Associative key merupakan nama key array yg didapat dari query SQL sebelumnya.

Untuk mengambil data perulangan dapat dengan script code berikut :
<?php
 include('koneksi.php');
 
 $sql       = "SELECT * FROM tb_siswa";
 $query     = mysqli_query($conn,$sql);
 
 while($row = mysqli_fetch_assoc($query)){
    echo "<pre>";
    print_r($row);
 
 } exit();
Data yang akan dihasilkan seperti berikut :

Array
(
    [noinduk] => 1
    [nama] => Alfansyah
    [alamat] => Jalan Merdeka
    [hobi] => Bermain Bola
)
Array
(
    [noinduk] => 2
    [nama] => Wawan Aja
    [alamat] => Jalan Kebenaran
    [hobi] => Mancing
)

MYSQLI_FETCH_ROW

Berbeda dengan fetch assoc, fetch row akan menghasilkan data array dengan key numeric ( 0 – 9 ) dengan kata lain index dari array.

Untuk mengambil datanya dapat dengan script code seperti berikut :

<?php
 include('koneksi.php');
 
 $sql       = "SELECT * FROM tb_siswa";
 $query     = mysqli_query($conn,$sql);
 
 while($row = mysqli_fetch_row($query)){
    echo "<pre>";
    print_r($row);
 
 } exit();
 
 
?>
Data yang akan dihasilkan :

Array
(
    [0] => 1
    [1] => Alfansyah
    [2] => Jalan Merdeka
    [3] => Bermain Bola
)
Array
(
    [0] => 2
    [1] => Wawan Aja
    [2] => Jalan Kebenaran
    [3] => Mancing
)
Nah itu tadi perbedaan antara fetch array, fetch assoc, dan fetch row pada saat pengambilan data dari database di PHP. Dengan mengenal perbedaan dari masing – masing fungsi tentu dapat membuat kita menentukan fungsi mana yang lebih efektif di saat kita ingin mengambil data.

Kalau kalian merasa artikel ini bermanfaat, jangan lupa tinggalkan komentar ya.

Terima kasih. 
Share This :
Funtechsy