function getCartoonTranslated($cartoonID) { // create a record $textArray = getTextToTranslate($cartoonID); $translator = new Yandex_Translate(); $textArray['name'] = mysql_real_escape_string($translator->yandexTranslate('ru', 'en', $textArray['name'])); $textArray['desc'] = mysql_real_escape_string($translator->yandexTranslate('ru', 'en', $textArray['desc'])); $textArray['tags'] = mysql_real_escape_string($translator->yandexTranslate('ru', 'en', $textArray['tags'])); //pokazh($out); // save translated //saveTranslated($out); saveTranslatedToDB($cartoonID, $textArray); //markCartoonAsTranslated($cartoonID); }
<?php /* Codeine * @author bergstein@trickyplan.com * @description * @package Codeine * @version 8.x */ setFn('Process', function ($Call) { include Codeine . '/Vendor/yandex/translate/Yandex_Translate.php'; $translator = new Yandex_Translate(); return $translator->yandexTranslate($Call['From'], $Call['To'], $Call['Value']); });
$translator = new Yandex_Translate(); //Ниже для экспериментов раскомментируйте нужное //Массив языков, с которых можно переводить echo '<pre>'; $pairs = $translator->yandexGetLangsPairs(); //print_r($pairs); echo '</pre>'; //Массив языков, на которые можно переводить echo '<pre>'; $to = $translator->yandexGet_FROM_Langs(); //print_r($to); echo '</pre>'; //Перевод $text = file_get_contents('text.txt'); //Это повторение значения свойства по умолчанию - см. код класса $translator->eolSymbol = '<br />'; $translatedText = $translator->yandexTranslate('ru', 'en', $text); //echo $translatedText; //Работа с большими текстами $bigText = file_get_contents('text_big.txt'); $textArray = Big_Text_Translate::toBigPieces($bigText); $numberOfTextItems = count($textArray); foreach ($textArray as $key => $textItem) { //Показываем прогресс перевода echo 'Переведен фрагмент ' . $key . ' из ' . $numberOfTextItems . '<br />'; flush(); $translatedItem = $translator->yandexTranslate('ru', 'en', $textItem); $translatedArray[$key] = $translatedItem; } $translatedBigText = Big_Text_Translate::fromBigPieces($translatedArray); echo $translatedBigText;
/** * Подготовка текста через API Яндекса (перевод с русского на английский) * * @param string $st * @return string */ function y_translate($text) { include_once BASE_DIR . '/lib/translate/Yandex_Translate.php'; $translator = new Yandex_Translate(); $translatedText = $translator->yandexTranslate('ru', 'en', $text); $translatedText = strtolower($translatedText); $translatedText = preg_replace(array('/^[\\/-]+|[\\/-]+$|^[\\/_]+|[\\/_]+$|[^\\.a-zа-яеёA-ZА-ЯЕЁ0-9\\/_-]/u', '/--+/', '/-*\\/+-*/', '/\\/\\/+/'), array('-', '-', '/', '/'), $translatedText); return $translatedText; }