この問題は microsofttranslator.com に固有のようです。そのため、ご回答をお願いします。それに対してテストできる場合は、...
翻訳には次の URL を使用します: http://api.microsofttranslator.com/V2/Ajax.svc/TranslateArray .. cURL 経由でいくつかの素晴らしい引数を送信し、次の結果が返されます。
[
{
"From":"en",
"OriginalTextSentenceLengths":[13],
"TranslatedText":"我是最好的",
"TranslatedTextSentenceLengths":[5]
},
{
"From":"en",
"OriginalTextSentenceLengths":[16],
"TranslatedText":"你是最好的",
"TranslatedTextSentenceLengths":[5]
}
]
json_decode($output, true);cURL からの出力で json_decode を使用すると、返されたJSONで構文が適切でないというエラーが表示されます。
json_last_error() == JSON_ERROR_SYNTAX
JSON で返されるヘッダー:
応答ヘッダー
Cache-Control:no-cache
Content-Length:244
Content-Type:application/x-javascript; charset=utf-8
Date:Sat, 06 Aug 2011 13:35:08 GMT
Expires:-1
Pragma:no-cache
X-MS-Trans-Info:s=63644
生のコンテンツ:
[{"From":"en","OriginalTextSentenceLengths":[13],"TranslatedText":"我是最好的","TranslatedTextSentenceLengths":[5]},{"From":"en","OriginalTextSentenceLengths":[16],"TranslatedText":"你是最好的","TranslatedTextSentenceLengths":[5]}]
cURL コード:
$texts = array("i am the best" => 0, "you are the best" => 0);
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = array(
'appId' => $bing_appId,
'from' => 'en',
'to' => 'zh-CHS',
'texts' => json_encode(array_keys($texts))
);
curl_setopt($ch, CURLOPT_URL, $bingArrayUrl . '?' . http_build_query($data));
$output = curl_exec($ch);