Cara menggunakan explode dan mengambil valuenya / index

Ditanyakan pada tanggal 6 February 2019 oleh Patar Ebenezer Siahaan

Saya sudah berhasil menggunakan implode dan explode. Masalahnya adalah : di controller ini :

function perjalanan_view()
    {
        $id = $this->uri->segment(4);
        $data['row'] = $this->db->get_where('table_rencana_perjalanan', array('perjalanan_id' => $id))->row_array();
        $query = $this->Model_testing->table_rencana_perjalanan()->result_array();
        foreach ($query as $key) {
            $hasil = explode(' ', $key['lat_long']);
        }
                    $data['ant_start'] = $hasil;
                    $data['ant_waypoints'] = $hasil;
                    $data['ant_end'] = $hasil;
                    $this->load->view('v_client_side/v_pembuatan_maps', $data);
    }

contoh didalam table:

perjalanan_id 1 arraynya : 9 8 1
perjalanan_id 2 arraynya : 2 1 9

variabel $hasil hanya akan mencetak perjalanan_id 2, kalo ditambahkan didalam table : perjalanan_id 3, maka value perjalanan_id 3 yg dicetak bukan 2. intinya, dia cuma cetak loop yang terakhir sebagai hasil. padahal yang saya mau dia cetak semua berdasarkan button maps yang sudah saya buat disini : https://imgur.com/a/HW8t7zJ

$data['ant_start'] = $hasil;
$data['ant_waypoints'] = $hasil;
$data['ant_end'] = $hasil;

ini akan saya lempar ke view untuk ambil lat dan long nya.

1 JAWABAN / 1 KOMENTAR

Generic placeholder image
Toni Haryanto menjawab pada tanggal 6 February 2019

pastikan hanya satu data yang diambil menggunakan row_array() sehingga tidak perlu foreach untuk mengambil data kolom lat_long

$data['row'] = $this->db->get_where('table_rencana_perjalanan', array('perjalanan_id' => $id))->row_array();
$hasil = explode(' ', $data['row']['lat_long']);

$data['ant_start'] = array_shift($hasil);
$data['ant_end'] = array_pop($hasil);
$data['ant_waypoints'] = $hasil;