Dhafiq Sagara adalah orang bodoh yang tidak bisa apa-apa, tapi dia selalu berusaha untuk terus menjadi yang lebih baik. Rasa keingin-tahuannya sangat tinggi, selalu berusaha dan terus berusaha, trial dan error adalah prinsip belajarnya.

24 Apr 2011

Script PHP Untuk Translate Teks Bahasa Dengan Menggunakan Google API Translate

Tutorial kali ini membahas mengenai pemanfaatan Google API Translate untuk diterapkan ke dalam bahasa PHP. Sebelum beranjak ke proses yang lebih dalam, sebenarnya API itu apa sih? bukan kependekan dari Akademi Pelawak TPI lho ya... hehe...

API (Application Programming Interface) adalah sekumpulan perintah, fungsi, dan protokol yang dapat digunakan oleh programmer saat membangun perangkat lunak untuk sistem operasi tertentu. API memungkinkan programmer untuk menggunakan fungsi standar untuk berinteraksi dengan sistem operasi (wikipedia).

Ada kalanya seorang programmer memanfaatkan API di dalam mengembangkan suatu aplikasi. Di dalam API itu terdapat fungsi-fungsi/perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer. Fungsi yang dibuat dengan menggunakan API tersebut kemudian akan memanggil system calls sesuai dengan sistem operasinya. Tidak tertutup kemungkinan nama dari system calls sama dengan nama di API.

Sebelum kita mulai membuat script PHP nya, kita aktifkan API key dari Google API Translate melaui link berikut https://code.google.com/apis/console/?api=translate dan gunakan akun Google anda. Jika belum memiliki akun Google, silahkan register dulu.

Setelah anda login, anda akan melihat tampilan seperti berikut:



















Klik tombol Add project, kemudian muncul konfirmasi persetujuan, silahkan tandai/centang pada I agree to these terms. Setelah itu klik tombol Accept.



















Akan muncul beberapa akses Google API yang lain, disini kita cukup mengaktifkan Translate API saja (dalam keadaan ON)
Kemudian klik API Access. Dan akan muncul API key.
API key tersebut yang akan kita gunakan untuk men-develop aplikasi translate menggunakan Google API.

Oke, untuk konfigurasi aktivasi Google API Translate sudah selesai. Saatnya kita membuat script PHPnya.


Pertama, kita buat form untuk penerjemahnya, berikut source codenya:

form-translate.html
<html>
<head>
   <title>Translate Bahasa Menggunakan Google API Translate</title>
</head>
<body>
<h1>Translate Bahasa Menggunakan Google API Translate</h1>
<form method="post" action="translate.php">
Dari:
<select name="from">
   <option value="id">Indonesia</option>
   <option value="en">Inggris</option>
   <option value="ma">Malaysia</option>
   <option value="fr">Perancis</option>
   <option value="es">Spanyol</option>
   <option value="de">Jerman</option>
   <option value="nl">Belanda</option>
</select>

Ke:
<select name="to">
   <option value="id">Indonesia</option>
   <option value="en">Inggris</option>
   <option value="ma">Malaysia</option>
   <option value="fr">Perancis</option>
   <option value="es">Spanyol</option>
   <option value="de">Jerman</option>
   <option value="nl">Belanda</option>
</select>
<input type="submit" name="submit" value="Terjemahkan">

<p><textarea name="teks" cols="40" rows="5"></textarea></p>

</form>
</body>
</html>

Perhatikan pada code form-translate.html di atas. Terdapat dua buah combo box untuk memilih bahasa tertentu ke bahasa tertentu untuk terjemahan. Masing-masing bahasa terdapat identitas sendiri, misalnya bahasa Indonesia menggunakan ‘id’, bhs Inggris dengan ‘en’. Identitas bahasa ini nanti akan dibaca oleh Google API Translate dan digunakan untuk proses translate.

Kemudian kita buat script translate.php yang merupakan action dari form-translate di atas. Berikut source codenya:

translate.php
<?php

// masukkan API Access di sini, ubah API key dibawah ini sesuai API key milik anda
$key = "AIzaSyCyr25D8TV_UCR-ZyusXon9D-BTYZeQwik";

// membaca teks dari form
$teks = urlencode($_POST['teks']);

// dari bahasa
$dariBhs = $_POST['from'];

// ke bahasa
$keBhs = $_POST['to'];

// URL untuk mengakses Google API Translate
$url = "https://www.googleapis.com/language/translate/v2?key=".$key."&q=".$teks."&source=".$dariBhs."&target=".$keBhs."&callback=response";

// membaca respon dari server Google
$fetch = file_get_contents($url);

// mengambil data JSON yang terletak di dalam response(...)
$splits1 = explode("response(", $fetch);
$splits2 = explode(");", $splits1[1]);

// mengekstrak data JSON
$hasil = json_decode($splits2[0], true);

// mengambil teks hasil terjemahan dari data JSON
$translate = $hasil["data"]["translations"][0]["translatedText"];

// menampilkan hasil terjemahan
echo "<p><b>Teks asli: </b>".$_POST['teks']."</p>";
echo "<p><b>Hasil terjemahan: </b>".$translate."</p>";
?>

Kemudian aktifkan openssl yang ada pada server apache kamu. OpenSSL tersebut digunakan untuk mengaktifkan https connection yang digunakan untuk memanggil koneksi Google API.
Jika menggunakan XAMPP, masuklah pada alamat directory C:\xampp\php, dan carilah file php.ini, kemudian carilah teks berikut:
;extension=php_openssl.dll
dan hilangkan tanda titik koma (;) yang ada di depannya. Kemudian simpan file php.ini tersebut dan restart server apache anda.

Setelah semua konfigurasi dan penulisan script PHP telah selesai, jalankan aplikasi melalui web server local (localhost) dan berikut tampilan aplikasi tersebut:


Dan hasil submit form tersebut adalah seperti berikut:





NB: Google API Translate ini terbatas melayani maksimum 100.000 karakter perhari untuk diterjemahkan dari sebuah API Access.


Silahkan download project translate-google-API.zip
Semoga bermanfaat.


2 komentar:

  1. mau tanya dong, klo pake script java gimana ya caranya? saya mo buat aplikasi google translate di hp android. mohon pencerahannya :)

    BalasHapus
  2. mau tanya dong, kalo kita buat penerjemah bahasa daerah apakah bisa?

    BalasHapus