Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: tłumaczenie kodu strony - google translate
Forum PHP.pl > Forum > PHP
Norbit_24
Witam

Potrzebuję zrobić takie tłumaczenie strony jest jest tutaj:
http://www.vbenterprisetranslator.com/

Tzn klikam w odpowiednią flage i tłumaczy mi cały kod źródłowy...

Prosze o jakieś przykłady.
pedro84
Hehe, żartujesz, co nie? Czytać potrafisz?


Poza tym, złe forum...
Norbit_24
Dlaczego miałbym żartować? To chyba Ty czytac nie umiesz. Ja nie chcę żeby ktoś mi ten tekst przetłumaczył co jest na tej stronie tylko chce takie coś zrobić na swojej. Żeby ktoś kto wejdzie np. z innego kraju mógł sobie przetłumaczyć tekst pisany po polsku na np. niemiecki.
Chcę zrobić tłumaczenie strony po wczytaniu kodu źródłowego.

Nie wiem jak to zrobić.
Nie chcę żadnych przekierowań itp. Chcę żeby działo się to bezpośrednio na stronie.
pedro84
Cytat(Norbit_24 @ 11.04.2010, 12:19:53 ) *
Dlaczego miałbym żartować? To chyba Ty czytac nie umiesz. Ja nie chcę żeby ktoś mi ten tekst przetłumaczył co jest na tej stronie tylko chce takie coś zrobić na swojej. Żeby ktoś kto wejdzie np. z innego kraju mógł sobie przetłumaczyć tekst pisany po polsku na np. niemiecki.
Chcę zrobić tłumaczenie strony po wczytaniu kodu źródłowego.

Nie wiem jak to zrobić.
Nie chcę żadnych przekierowań itp. Chcę żeby działo się to bezpośrednio na stronie.


Raczysz żartować ponownie, prawda? Przecież jak wół jest napisane:
Cytat
Automatic Translations (Powered by Google):


Troszeczkę inwencji...
mortus
Jeśli nie chodzi Ci o tłumaczenia Google, to poczytaj o internacjonalizacji nazywanej inaczej I18n. Jest kilka różnych metod zaimplementowanych również w PHP. Dla elementów stałych tzn. takich jak menu, nazwy kontenerów (np. "Nowości", "Aktualne wydarzenia", "Panel logowania") można użyć gettext i specjalnych plików językowych stworzonych w programie np. POEdit. Treść natomiast powinna być generowana z odpowiedniej dla danej lokalizacji bazy danych. Oczywiście można też wszystko oprzeć na plikach php. Dla przykładu:
plik languages/en.php
  1. <?php
  2. $_TEXT['SELECT_LANGUAGE'] = 'Select language';
  3. $_TEXT['HELLO_WORLD'] = 'Hello World';
  4. ?>
plik languages/pl.php
  1. <?php
  2. $_TEXT['SELECT_LANGUAGE'] = 'Wybierz język';
  3. $_TEXT['HELLO_WORLD'] = 'Witaj świecie';
  4. ?>
plik index.php
  1. <?php
  2. if(isset($_GET['lang']) && $_GET['lang'] != '') {
  3. $lang = $_GET['lang'];
  4. } else {
  5. $lang = 'pl';
  6. }
  7. if(file_exists('languages/' . $lang . '.php') {
  8. include 'languages/' . $lang . '.php';
  9. } else {
  10. include 'languages/pl.php';
  11. }
  12. echo $_TEXT['SELECT_LANGUAGE'] . ': <a href="index.php?lang=pl">pl</a> | <a href="index.php?lang=en">en</a>';
  13. echo $_TEXT['HELLO_WORLD'];
Norbit_24
dzięki, jednak chodzi mi o tłumaczenia google..
pedro84 - jest to dodatek do vBulletin

a ja to chcę zrobić do osobnej strony

tehaha - skrypt z 2 linku działa ok, ale nie chcę żadnych przekierowań
pedro84
Cytat(Norbit_24 @ 11.04.2010, 13:21:02 ) *
dzięki, jednak chodzi mi o tłumaczenia google..
pedro84 - jest to dodatek do vBulletin

a ja to chcę zrobić do osobnej strony

tehaha - skrypt z 2 linku działa ok, ale nie chcę żadnych przekierowań



Wiem, wiem, chodziło mi raczej o samo narzędzie udostępnione przez Google.
Norbit_24
Znalazłem działający kod, jednak nie chcę tłumaczyć słów z polskimi znakami;/ A to jest tutaj ważne.

Proszę o inne przykłady

  1. <?php
  2.  
  3. /**
  4.  * Translating language with Google API
  5.  * @author gabe@fijiwebdesign.com
  6.  * @version $id$
  7.  * @license - Share-Alike 3.0 (http://creativecommons.org/licenses/by-sa/3.0/)
  8.  *
  9.  * Google requires attribution for their Language API, please see: <a href="http://code.google.com/apis/ajaxlanguage/documentation/#Branding" target="_blank">http://code.google.com/apis/ajaxlanguage/d...ation/#Branding</a>
  10.  *
  11.  */
  12. class Google_Translate_API {
  13.  
  14. /**
  15. * Translate a piece of text with the Google Translate API
  16. * @return String
  17. * @param $text String
  18. * @param $from String[optional] Original language of $text. An empty String will let google decide the language of origin
  19. * @param $to String[optional] Language to translate $text to
  20. */
  21. function translate($text, $from = '', $to = 'en') {
  22. $url = 'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q='.rawurlencode($text).'&langpair='.rawurlencode($from.'|'.$to);
  23. $response = file_get_contents(
  24. $url,
  25. null,
  26. 'http'=>array(
  27. 'method'=>"GET",
  28. 'header'=>"Referer: http://".$_SERVER['HTTP_HOST']."/\r\n"
  29. )
  30. )
  31. )
  32. );
  33. if (preg_match("/{\"translatedText\":\"([^\"]+)\"/i", $response, $matches)) {
  34. return self::_unescapeUTF8EscapeSeq($matches[1]);
  35. }
  36. return false;
  37. }
  38.  
  39. /**
  40. * Convert UTF-8 Escape sequences in a string to UTF-8 Bytes
  41. * @return UTF-8 String
  42. * @param $str String
  43. */
  44. function _unescapeUTF8EscapeSeq($str) {
  45. return preg_replace_callback("/\\\u([0-9a-f]{4})/i", create_function('$matches', 'return html_entity_decode(\'&#x\'.$matches[1].\';\', ENT_NOQUOTES, \'UTF-8\');'), $str);
  46. }
  47. }
  48.  
  49. // example usage
  50. $text = 'Czesc to ja.';
  51. $trans_text = Google_Translate_API::translate($text, 'pl', 'en');
  52. if ($trans_text !== false) {
  53. echo $trans_text;
  54. }
  55.  
  56.  
  57. ?>


Dobra, wykorzystam jednak to:

http://translate.google.com/translate_tools?hl=pl

Dzięki, Pozdr
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.