Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function kamus($explode, $tipe){
- $terjemah = '';
- $cari = array();
- foreach ($explode as $key => $value) {
- $exp_comma = explode(",",$value); //pisahkan berdasarkan koma
- $exp_titik = explode(".",$value); //pisahkan berdasarkan titik
- $exp_tanya = explode("?",$value); //pisahkan berdasarkan tanya
- if(count($exp_comma)> 1){ //jika ada komanya
- $cari[] = $exp_comma[0]; //add array kata
- $cari[] = ",";
- }elseif(count($exp_titik)> 1){//jika ada titiknya
- $cari[] = $exp_titik[0]; //add array kata
- $cari[] = ".";
- }elseif(count($exp_tanya)> 1){ //jika ada tanyanya
- $cari[] = $exp_tanya[0]; //add array kata
- $cari[] = "?";
- }else{
- $cari[] = $value; //add array kata
- }
- }
- $imp = implode(" ", $cari); //gabungkan berdasarkan spasi
- $exp = explode(" ",$imp); //pisahkan berdasarkan spasi
- $kolom = ($tipe == 'jawa')? 'indonesia':'jawa';
- $kamus = $this->db->where_in($kolom, $exp)->get('kamus')->result_array(); //get kata yang dicari
- $terjemah = ''; //menyimpan terjemah
- $tidak_ketemu = array(); //untuk menyimpan kata yang tidak ditemukan
- $data = array();
- // ELASTIC SEARCH
- $i = 0;
- while ($i < count($cari)) {
- $n = 0;
- $ketemu = false; //set default ketemu = false
- $ter = $cari[$i];
- $data_ = array();
- while ($n < count($kamus) && $ketemu == false) { //loop dampai ketemu
- if(strtolower($cari[$i]) == strtolower($kamus[$n][$kolom])){ //jika ketemu
- $ketemu = true; //set true
- $ter = $kamus[$n][$tipe]; //ambik terjemah nya
- $data_ = $kamus[$n]; //ambil datanya
- }else{
- $ketemu = false;
- }
- $n++;
- }
- if($ketemu){
- $terjemah .= " ".$ter;
- $data[] = $data_;
- }else{
- if(ctype_alnum ($ter)) //cek mengandung alpha numeric atau tidak
- $terjemah .= " ".$ter;
- else
- $terjemah .= "".$ter;
- if(ctype_alnum ($ter)){ //cek mengandung alpha numeric atau tidak
- // insert ke db kata yang tidak ditemukan
- $this->db->insert('undefined', array('kata' => $ter, 'created_at' => date('Y-m-d H:i:s')));
- $tidak_ketemu[] = $ter;
- }
- }
- $i++;
- }
- //
- return array('terjemah' => $terjemah, 'tidak_ketemu' => $tidak_ketemu, 'data' => $data);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement