Belajar Web Programming PHP, HTML, MySQL dan Tutorial

Aplikasi Pengecekan Kata Dengan Fungsi PHP levenshtein

levenshtein distance adalah sebuah metode untuk menghitung jarak/distance dari dua buah string. PHP menyediakan fungsi untuk mendukung hal ini yaitu dengan menggunakan function levenshtein(). Cara penggunaannya pun cukup mudah yaitu seperti contoh berikut ini.


<?php
echo levenshtein("Hello World","Hello World")."<br>";
echo levenshtein("Hello World","Helo World")."<br>";
?>
Kedua baris kode diatas akan menghasilkan nilai distance dari perbandingan kedua string tersebut. Hasilnya keduanya bernilai 1. Hasil ini menunjukan bahwa kedua string tersebut memiliki kemiripan yang hampir sama, sehingga kita dapat memberikan koreksi apabila ada kesalahan dalam penulisan huruf dalam string tersebut. Function levenshtein() memberikan nilai 0 apabila dua buah string tersebut sama, dan akan memberikan nilai lain tergantung dari hasil pengolahan sejauh mana perbedaan dari kedua buah string tersebut.

Dengan adanya function levenshtein() tersebut kita dapat membuat sebuah aplikasi sederhana untuk melakukan pengecekan apakah sebuah kata yang kita inputkan benar atau tidak, hal ini menjadi dasar dalam pembuatan grammer checker dalam suatu aplikasi berdasarkan basis data kata-kata yang sudah tersimpan sebelumnya. Tentu dalam aplikasi ini kita belum menggunakan data yang terlalu banyak, namun dengan prinsip yang sama kita dapat menerapkannya menjadi suatu aplikasi sederhana dengan kemampuan pengecekan kata berdasarkan output dari levenshtein distance. Mari kita coba membuatnya.

1. Buat terlebih dahulu array untuk menyimpan data kata-kata
<?php 
$data[0]="application";
$data[1]="computer";
$data[2]="internet";
$data[3]="linux";
$data[4]="software";
$data[5]="user";
$data[6]="website";
$data[7]="windows";
?>

2. Setelah itu kita buat sebuah antarmuka input
3. Kemudian kita juga membuat output hasil dari pengecekan menggunakan levenshtein function tersebut

Berikut hasil akhir sourcecode dari aplikasi pengecekan kata tersebut.
index.php
<h2>Aplikasi Pengecekan Kata Dengan Fungsi PHP levenshtein </h2>
<hr>
<form action="index.php" method="get">
Input
<input type="text" name="string" placeholder="Insert Word">
<input type="submit" value="Process">
</form>
<hr>
<b>Sample Words</b>
<br>
<?php
$data[0]="application";
$data[1]="computer";
$data[2]="internet";
$data[3]="linux";
$data[4]="software";
$data[5]="user";
$data[6]="website";
$data[7]="windows"; 

for($i=0;$i<=7;$i++) {
 echo $data[$i]."<br>";
}
?>
<hr>
<?php 
$string = isset($_GET['string'])?$_GET['string']:"";
$hasil  = array();

if(!empty($string))
{
 for($i=0;$i<=7;$i++) {
 //calculate distance 
 $hasil[$i]['distance'] = levenshtein($data[$i],$string);
 $hasil[$i]['index']    = $i;
 }

 //sort the result
 usort($hasil, function($a, $b) {
     return $a['distance'] - $b['distance'];
 });

 //first array is the result
 $result = $hasil[0]['distance'];
 $index  = $hasil[0]['index'];

 if($result == 0) {
  echo "Kata yang diinputkan adalah <b>".$string."</b><br>";
  echo "Distance/Jarak adalah <b>".$result."</b><br>";
 }
 if($result > 0) {
  echo "Kata yang diinputkan adalah <b>".$string."</b><br>";
  echo "Distance/Jarak adalah <b>".$result."</b><br>";
  echo "Mungkin kata yang dimaksud adalah <b>".$data[$index]."</b>";
 }


}
?>

Berikut hasil akhirnya

Labels: Function PHP, levenshtein, PHP

Terima kasih telah membaca Aplikasi Pengecekan Kata Dengan Fungsi PHP levenshtein. Bila bermanfaat boleh di share yah :)

3 Comment for "Aplikasi Pengecekan Kata Dengan Fungsi PHP levenshtein"

kalau data diatas kita misalkan didatabase bagaimana kak?

Some of these remarks may not influence part performance but could improve mould and part performance and scale back danger to mass manufacturing. The first stage before injection of the plastic that may kind best toilet bowl tablets into components is to see that the mould works. This is the primary time the mould maker mounts the mould on the injection machine and sees that the moving elements transfer nicely, that the plastic soften flows nicely, that the cooling performs, and more. ABS resin is an opaque thermoplastic polymer and an engineering grade plastic.

Princess Warrior is a 3D slot machine powered by Realtime Gaming. The game is classified as a high variance slot, and it options 40 paylines. Players can expect aprogressive jackpot, random wilds, and multipliers. There are six states where find a way to|you possibly can} play 소울카지노 online slots for actual money. These states embrace New Jersey, Pennsylvania, West Virginia, Connecticut, Delaware, and Michigan. It’s now authorized to go online to a licensed PA on line casino and play slots and table games.

Back To Top