Skip to Content | Skip to Menus | Copyright?

Posted on

Kadang eh sering kita menemui data yang akan ditampilkan dari database adalah berupa array. Data dalam array tidak bisa ditampilkan begitu saja, dan kadang perlu sedikit usaha untuk menampilkannya.

Contoh berikut adalah data array :

<?php
  $gallery = array(
    array(
      'title' => 'numero uno',
      'description' => 'yeah numero uno is numero satu',
      'image' => 'http://media.riesurya.dev/assets/gallery-07.jpg',
    ),
    array(
      'title' => 'numero duo',
      'description' => 'what duo, ok now numero duo',
      'image' => 'http://media.riesurya.dev/assets/gallery-06.jpg',
    ),
    array(
      'title' => 'numero tigo',
      'description' => 'again? numero tigo why not telu',
      'image' => '',
    ),
    array(
      'title' => 'numero piro',
      'description' => 'what the numero ? ah its ok if got piro, just give me image',
      'image' => 'http://media.riesurya.dev/assets/gallery-03.jpg',
    ),
  );
?>

Data array di atas termasuk array sederhana, dan untuk menampilkannya kita membutuhkan fungsi php foreach.

Lebih jelasnya bila variable $gallery ditampilkan melalui var_dump(), maka hasilnya adalah sebagai berikut :

array
  0 => 
    array
      'title' => string 'numero uno' (length=10)
      'description' => string 'yeah numero uno is numero satu' (length=30)
      'image' => string 'http://media.riesurya.dev/assets/gallery-07.jpg' (length=47)
  1 => 
    array
      'title' => string 'numero duo' (length=10)
      'description' => string 'what duo, ok now numero duo' (length=27)
      'image' => string 'http://media.riesurya.dev/assets/gallery-06.jpg' (length=47)
  2 => 
    array
      'title' => string 'numero tigo' (length=11)
      'description' => string 'again? numero tigo why not telu' (length=31)
      'image' => string '' (length=0)
  3 => 
    array
      'title' => string 'numero piro' (length=11)
      'description' => string 'what the numero ? ah its ok if got piro, just give me image' (length=59)
      'image' => string 'http://media.riesurya.dev/assets/gallery-03.jpg' (length=47)

Perhatikan baris ke 2, 7, 12,17 masing-masing menunjukkan nilai key kelompok array,dan tiap-tiap array tersusun atas kelompok key ( title, description, image ) dan value untuk tiap-tiap key. Pada contoh di atas, kita akan menampilkan data array tersebut dalam struktur HTML sebagai berikut :

Maka untuk menampilkannya kita harus mengurai satu per satu sebagai key ( $k ) dan value ( $v ) dengan kode berikut :

<?php
foreach ( $gallery as $k => $v ) :
?>
Title : <?php echo $v['title'];?>
<img src="<?php echo $v['image'];?>" alt="<?php echo $v['description'];?>">
<?php
endforeach; //loop selesai
?>

Perhatikan baris no.2 : kita urai data pada $gallery sebagai $k ( key ) dan karena tiap key memiliki value masing-masing maka dituliskan sebagai $k => $v. mulai baris ke-3, data value sudah terurai menjadi untuk tiap kelompok array dan sudah siap untuk ditampilkan pada baris ke-4, data title ditampilkan sebagai $v[‘title’], dan selanjutnya.
Sampai disini kita sudah bisa menampilkan array secara mendasar.Pertanyaan lanjutan, bagaimana bila ada data value yang kosong ? Untuk kasus ini ( lihat contoh array di atas, ada data key dengan value yang kosong ), maka kita perlu melakukan pengecekan sebelum ditampilkan.

<?php
foreach ( $gallery as $k => $v ) :
?>
Title : <?php echo $v['title'];?>
if ( !empty( $v['image'] ) ) : ?>
<img src="<?php echo $v['image'];?>" alt="<?php echo $v['description'];?>">
<?php
endif; //selesai cek ada image apa tidak
endforeach; //loop selesai
?>

Lihat ada if conditional dan !empty untuk memastikan bahwa hanya bila $v[‘image’] memiliki value maka gambar baru ditampilkan.

Mudah kan … smile baby

Mau lanjut ke pertanyaan berikutnya ? bagaimana bila kita hanya ingin menampilkan data pada kelompok array urutan ke -3 saja dan tidak semuanya ?

Untuk itu kita perlu paham kalau penghitungan dimulai dari nol, lihat lagi struktur data di atas dan kodenya adalah sebagai berikut :

<?php 
foreach ( $gallery as $k => $v ) :
if ( $k == '2' ) :
?>
  Title : <?php echo $v['title'];?>
  <?php 
  if ( !empty( $v['image'] ) ) :
  //check image ada apa tidak, kalo ada tampilkan dan sebaliknya
  ?>
    <img src="<?php echo $v['image'];?>" alt="<?php echo $v['description'];?>">
  <?php endif; //selesai if conditional untuk image checking ?>

  <?php endif; //checking $k == 2 
endforeach; //loop selesai
?>

Kiranya semoga tutorial singkat seputar array dan bagaimana menampilkannya bisa dipahami. Bilamana ada penyampaian dan materi yang kurang pas apalagi valid ya mohon dimaklumi. Saya hanya pembelajar alami dan tidak pernah sekolah koding hahahaha.

OK, sampai ketemu di sesi tutorial lainnya, entah php entah css …whatever lah.
Selamat pagi selamat berkarya

Last Modified on :

CopyRight & Left : ©2007 - now and forever

part of DeVio Multimedia

TOS - Help - Contact - About

Developed with DeVio Playground - Theme Framework