こんにちは、Webプログラマの篠田です。
4月も折り返しを過ぎ、新緑が眩しい季節になってきました。
朝晩も涼しく、インドアプログラマの私も気持ちよく外出することができます。
さて、今回は前回に引き続き自動翻訳サービス「Google Cloud Translation API」の導入方法について、ご紹介します。
composerでパッケージを追加
まずは、PHPで「Google Cloud Translation API」を利用するためのパッケージを、「composer」を使って、インストールします。
composer require google/cloud-translate
または、composer.jsonに記述する場合は、下記のとおりです。
{
"require": {
"google/cloud-translate": "*"
}
}
これで、「Google Cloud Translation API」を利用するためのPHP環境が用意できました。
基本情報を用意
「Google Cloud Translation API」を利用する時に必要となるのが下記の2点です。
(1)Google Cloud Platformの「プロジェクトID」
(2)「Google Cloud Translation API」の「APIキー」
Google APIの管理画面「Google API Console」へのURL
https://console.cloud.google.com/apis/library?hl=ja
それぞれを事前に用意しておきます。
「プロジェクトID」の場所
ヘッダーにあるプルダウンから指定の「プロジェクト名」を選択します。

「APIキー」の場所
Google API一覧が表示されている中から、「Google Cloud Translation API」をクリックします。

「APIキー」と書かれた項目の「キー」が必要なる情報になります。

サンプルプログラム
早速、「日本語」から「英語」に翻訳するサンプルプログラムをご紹介します。
<?php
require_once '/vendor/autoload.php';
use Google\Cloud\Translate\TranslateClient;
//Google APIの「プロジェクトID」
$projectId = 'プロジェクトID';
//「Google Cloud Translation API」の「APIキー」
$apiKey = 'APIキー';
//「TranslateClient」クラスを呼び出し
$translate = new TranslateClient([
'projectId' => $projectId,
'key' => $apiKey,
]);
//翻訳したい言語を指定。今回は「日本語→英語」なので「en」
$lang = "en";
//翻訳開始
$result = $translate->translate("今日も、いい天気ですね。", [
'target' => $lang,
]);
var_dump($result);
「$translate->translate」の第1引数に翻訳したい文章を渡すことで、翻訳が行われます。
DB等に保存されている場合などは、「$translate->translate」をループ内で利用することで大量の翻訳処理を行うことができます。
前回もご紹介しましたが、APIアクセス数ので課金ではないので、安心(?)して利用できます。
※ただし、APIアクセス数の上限はありますので、まとめられるのであれば、まとめて翻訳するのが良いのは良いです。
Googleからの戻り値
Googleからの戻り値を確認しておきます。
array(4) {
["source"]=>
string(2) "ja"
["input"]=>
string(36) "今日も、いい天気ですね。"
["text"]=>
string(36) "It is nice weather today, is not it?"
["model"]=>
NULL
}
翻訳内容とWeb版Google翻訳との内容に違いがないかも確認します。

まとめ
APIレスポンスも早く、Web版Google翻訳と同じ機能が利用できるのは大きな強みですね。
また、「composer」を利用することで必要なパッケージがインストールされるので接続も簡単です。
是非、「Google Cloud Translation API」を使って翻訳機能をシステムに導入してはどうでしょうか?
現場の業務フローに寄り添ったWebシステムをお求めなら、私たちALAKIにご相談ください。
ALAKIは経営者様が感じている問題点と、実際にWebシステムを利用される現場スタッフ様が直面している課題を、弊社システムエンジニアが丁寧に聞き取り、お客様と共にシステムを作り上げていきます。
業務改善が実現できるWebシステムをお求めの方は、是非ALAKIにご相談ください。











