Перевожу через API Яндекс.Переводчика текст так:
$api_key = "key";
$lang = "en-ru";
$text = "juice";
$result = file_get_contents("https://translate.yandex.net/api/v1.5/tr.json/translate?" .
"key=" . $api_key . "&" .
"text=" . $text . "&" .
"lang=" . $lang);
$result = json_decode($result, true);
$ru_test = $result['text'][0];
echo $ru_test;
Если в переменной $text у нас одно слово, то все переводит, но если 2 слова, то уже нет ($text = "apple juice"
). Как правильно прописывать многострочный текст?
Выдает ошибку "Warning: file_get_contents(https://translate.yandex.net/api/v1.5/tr.json/translate?key=trnsl.1.1.20200112T161657Z.ec6b45005112fff7.a163d5db42f342b0fe053523d19ee583d858f54b&text=juice juice&lang=en-ru): failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request in W:\domains\lessons.loc\index.php on line 25"
Кодируйте параметры целиком с помощью http_build_query()
либо текст с помощью urlencode()
define('API_URL', "https://translate.yandex.net/api/v1.5/tr.json/translate?");
$parms = [
'api_key' => "key",
'lang' => "en-ru",
'text' => "juice",
];
$url = API_URL . http_build_query($params);
$result = file_get_contents($url);
if($result !== false){
$data = json_decode($result, true);
echo $data['text'][0];
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как создать php-скрипт для единоразового запуска, допустим нужно сделать одну запись в базу данных, без создания модуляТакже нужно создать...
В цикле у меня перебираются страницы и загружаются
Собственно сабж в заголовкеВывожу товары через каталог, надо этот статус вывести