kavist / rajaongkir

Klien API RajaOngkir untuk PHP.
https://packagist.org/packages/kavist/rajaongkir
MIT License
134 stars 67 forks source link

Bug Pencarian kota/kabupaten berdasarkan nama #3

Open Mudarismal opened 5 years ago

Mudarismal commented 5 years ago

Sebelumnya saya sangat apresiasi untuk para kontributor, paket ini yang sangat membantu sekali buat para developer yang ingin mengimplementasikan fitur API Raja Ongkir dalam aplikasi.

Namun setelah melakukan pengetesan, saya menemukan sedikit bug pada fitur pencarian kota berdasarkan nama, seperti beberapa contoh di bawah ini

Pada dua contoh di atas saya mendapat error "Undefined variable: result"

Setelah saya telusuri ternyata penyebab bug di atas ada file berikut : ini

Jadi untuk mendapatkan hasil yang diinginkan, sementara saya melakukan perubahan pada file vendor, yg tentunya akan menjadi kendala bila nanti melakukan update pada composer.

Berikut ini adalah perubahan yang saya lakukan :

public function search(string $searchQuery): array
    {

        $result = []; // Deklarasikan Variabel Awal

        $rowColumn = array_column($this->collection, $this->searchColumn);
        $q      = trim(strtolower($searchQuery)); // Convert to strtolower ( User Keyword )
        $data   = array_map('strtolower', $rowColumn); // Convert to strtolower ( All value )
        $cari   = preg_quote($q, '/'); 
        $res    = preg_grep('/' . $cari . '/', $data); // Hapus ^ untuk pencarian pd semua suku kata , misal ('Batang Hari' dg keyword 'tang', 'ari' atau 'hari')
        $resKey = array_keys($res); // Get Key

        foreach ($this->collection as $key => $val) {
            if (in_array($key, $resKey)) {
                $result[] = $val;
            }
        }

        return $result;
    }
ianmustafa commented 5 years ago

mas @Mudarismal, keberatan kah kalo saya minta bikin pull request?

Mudarismal commented 5 years ago

Oohhh, g' masalah kok mas @ianmustafa nanti biar saya bikin pull request nya pada repo...

Pada tanggal Jum, 1 Nov 2019 20:34, Ian Mustafa notifications@github.com menulis:

mas @Mudarismal https://github.com/Mudarismal, keberatan kah kalo saya minta bikin pull request?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kavist/rajaongkir/issues/3?email_source=notifications&email_token=AEKPT43674AVRRQF4JGNAITQRQV5PA5CNFSM4JHZOLKKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEC25YDQ#issuecomment-548789262, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEKPT47KJ7ZBCIBDRWZDKIDQRQV5PANCNFSM4JHZOLKA .