Mobil Matic Anda Mogok Di Jalan? Lakukan Ini, Semu...
Cara membuat Array dengan Variabel String di Pemrograman PHP
Ditulis oleh : Putu Adi, 18 Desember 2022
Ini sebenernya masalah receh banget, tapi karena ketidak tahuan saya, akhirnya ngabisin waktu berjam-jam, buat nyari solusinya. Siapa tau kalian juga ngalamin ini, jadi bisa menghemat waktu banget.
Oke saya mulai aja.
Jadi saya dalam kasus ini, saya lagi buat aplikasi, dan kebetulan lagi bikin fungsi untuk ngambil data di sebuah website, yang memang menyediakan data “Plantae Taxonomic Hierarchy“. atau istilah lainnya, data pengelompokan tanaman berdasarkan silsilah. Makin bingung lagi ya? 😅, oke biar nggak bingung saya kasih contoh penampakannya.
Kebetulan website tersebut menyediakan data lewat API (Application Programming Interface), salah satu format yang disediakan adalah JSON.
Cuman kebetulan data yang saya butuhkan ini, tersimpan di sebuah objek array bernama “hierarchySoFar” yang nilainya string.
Sejujurnya, saya belum pernah ngolah data objek array seperti ini. Tapi karena data yang tersedia cuman ini aja, ya udah di akal – akalin aja. Karena saya sudah 2 harian nyari data ini. Dan baru ketemu sore tadi. Awalnya saya pikir sumbernya di USDA, tapi ternyata adanya di ITIS. Ternyata malahan USDA ngambil datanya di ITIS.
Oke singkat cerita, value dari “hierarchySoFar” adalah :
Awalnya saya pikir-pikir, oh bisa nih, di manipulasi pakai fungsi “str_replace” dan “substr”. Akhirnya saya ambil datanya dengan fungsi “curl_init();“
Lalu dari variabel $klasifikasi_tanaman; saya manipulasi valuenya dengan cara ini.
Kalau kita echo si variabel $val_klasifikasi , Yang outputnya awalnya seperti ini :
Sekarang sudah jadi seperti ini :
‘Plantae’, ‘Viridiplantae’, ‘Streptophyta’, ‘Embryophyta’, ‘Tracheophyta’, ‘Spermatophytina’, ‘Magnoliopsida’, ‘Lilianae’, ‘Zingiberales’, ‘Zingiberaceae’, ‘Zingiber’
Bayangan saya, variabel $val_klasifikasi; tinggal dibuat array dengan cara seperti ini. Secara teknis, variabel $val_klasifikasi isinya string dengan value :
‘Plantae’, ‘Viridiplantae’, ‘Streptophyta’, ‘Embryophyta’, ‘Tracheophyta’, ‘Spermatophytina’, ‘Magnoliopsida’, ‘Lilianae’, ‘Zingiberales’, ‘Zingiberaceae’, ‘Zingiber’
Maka untuk membuat variabel array, saya pikir bisa dengan cara :
$arrayku = array($val_klasifikasi);
Setelah di var_dump($arrayku);
Dia terbaca sebagai array, tapi dengan satu baris string.
array(1) { [0]=> string(167) ” ‘Plantae’, ‘Viridiplantae’, ‘Streptophyta’, ‘Embryophyta’, ‘Tracheophyta’, ‘Spermatophytina’, ‘Magnoliopsida’, ‘Lilianae’, ‘Zingiberales’, ‘Zingiberaceae’, ‘Zingiber'” }
Hampir 4 jam deh kayaknya, saya muter – muter, nyari cara ngakalinnya gimana.
Ternyata, di PHP memang sudah disiapkan fungsi untuk membuat array yang valuenya string.
Dalam kasus ini, solusinya adalah pakai parameter “explode”
Cara penggunaannya seperti ini.
$arrayku = explode(“,” , $val_klasifikasi);
‘Plantae’, ‘Viridiplantae’, ‘Streptophyta’, ‘Embryophyta’, ‘Tracheophyta’, ‘Spermatophytina’, ‘Magnoliopsida’, ‘Lilianae’, ‘Zingiberales’, ‘Zingiberaceae’, ‘Zingiber’
Dimana, dengan cara seperti ini, value dari $val_klasifikasi; akan di dipecah berdasarkan parameter, dengan karakter tertentu. Apapun bisa. Dalam kasus saya diatas, value di pecah dengan parameter koma.
Maka, setiap ada koma, value akan dipecah menjadi kepingan – kepingan array.
Nah kalau saya tau fungsi ini dari awal, maka saya tidak perlu repot-repot memanipulasi pakai “str_replace” dan “substr”, seperti yang saya jelaskan di atas.
Langsung aja pakai fungsi explode, dengan parameter pemisah tanda dolar ($). Karena data default yang di sediakan di JSON adalah data string, dengan pemisah tanda dolar.
Untuk sementara, data yang saya ambil, sudah bisa ditampilkan di halaman sederhana. Seperti ini penampakannya.
Nah semoga ada manfaatnya. Setidaknya saya gunakan ini untuk catatan pribadi. Kalau lupa, bisa lihat catatan ini lagi hehehe.
Cari pembahasan apa?