承接 da41b94c/yandex-translate-php 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

da41b94c/yandex-translate-php

最新稳定版本:v1.0.1

Composer 安装命令:

composer require da41b94c/yandex-translate-php

包简介

Yandex Cloud Translate API client

README 文档

README

Packagist Version CI

PHP-клиент для Yandex Cloud Translate API:

  • Авторизация через Api-Key (API key сервисного аккаунта)
  • Передаёт folderId в теле запроса
  • Поддерживает get() и getBatch()
  • Повторы (retry) при 429 / 5xx / таймаутах (настраивается)
  • Проверка SSL включена по умолчанию

Требования

  • PHP >= 7.4
  • ext-curl

Установка (Composer)

composer require da41b94c/yandex-translate-php

Настройка

Рекомендуется задавать переменные окружения:

  • YANDEX_API_KEY
  • YANDEX_FOLDER_ID

Пример (Linux):

export YANDEX_API_KEY="YOUR_API_KEY"
export YANDEX_FOLDER_ID="YOUR_FOLDER_ID"

Использование (одна строка)

<?php
require __DIR__ . '/vendor/autoload.php';

use Da41b94c\YandexTranslate\YandexTranslate;

$Tr = new YandexTranslate([
	'MaxRetries' => 2,
	'Debug' => false,
]);

$Res = $Tr->get('Привет мир', 'ru', 'en');

if (!empty($Res->ok)) {
	echo $Res->translations[0]->text . PHP_EOL;
} else {
	echo 'Error: ' . $Res->code . ' :: ' . $Res->message . ' (HTTP ' . $Res->httpCode . ')' . PHP_EOL;
}

Использование (пакетный перевод)

<?php
require __DIR__ . '/vendor/autoload.php';

use Da41b94c\YandexTranslate\YandexTranslate;

$Tr = new YandexTranslate();

$Res = $Tr->getBatch([
	'Первый текст',
	'Второй текст',
	'Третий текст',
], 'ru', 'de');

if (!empty($Res->ok)) {
	foreach ($Res->translations as $i => $t) {
		echo ($i + 1) . ') ' . $t->text . PHP_EOL;
	}
} else {
	echo 'Error: ' . $Res->code . ' :: ' . $Res->message . ' (HTTP ' . $Res->httpCode . ')' . PHP_EOL;
}

Опции

Опции передаются в конструктор:

  • ApiKey (string) — опционально, переопределяет env
  • FolderId (string) — опционально, переопределяет env
  • Timeout (int) — таймаут запроса, секунды (по умолчанию 15)
  • ConnectTimeout (int) — таймаут подключения, секунды (по умолчанию 8)
  • MaxRetries (int) — число повторов для временных ошибок (по умолчанию 2)
  • RetryBaseDelayMs (int) — базовая задержка backoff, мс (по умолчанию 300)
  • UserAgent (string) — свой User-Agent
  • CaBundlePath (string) — путь к CA bundle (опционально)
  • Debug (bool) — добавлять сырой ответ в extra при ошибках (по умолчанию false)

Коды ошибок

  • NO_CREDENTIALS — не заданы ApiKey/FolderId
  • EMPTY_TEXT — список текстов пуст
  • RATE_LIMIT — 429, слишком много запросов
  • UPSTREAM_5XX — 5xx от API
  • AUTH_OR_PERMISSIONS — 401/403 (неверный ключ/не хватает прав)
  • BAD_REQUEST — 400 (неверный payload и т.п.)
  • BAD_JSON — некорректный JSON-ответ / проблемы кодирования JSON
  • CURL_ERROR — сетевые/SSL/таймаут ошибки (см. meta.curlErrNo)

Заметки по безопасности

  • Никогда не коммить API ключи и .env.
  • Держи SSL-проверку включённой. Если в окружении нет корневых сертификатов — корректно установи CA certificates или укажи CaBundlePath.

Лицензия

MIT

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固