E-learn.ro
Panou utilizatori
Utilizator Parola
Creeaza cont nou    Recupereaza parola
Login
Newsletter
Introdu adresa ta de email
Inscrie-te
Inchide panoul de utilizatori
Add to Google

Tutoriale PHP

Descarca toolbar

Toolbar E-learn.ro Facebook Twitter

WEB DEVELOPMENT  /  PHP  /  Zend Framework (5)

Lucrul cu Zend_Translate in Zend Framework

22.01.2010
Lucrul cu Zend_Translate in Zend Framework

Atunci cand dezvoltati website-uri dedicate utilizatorilor din intreaga lume si aveti nevoie de o modalitate facila de a integra suport pentru mai multe limbi, puteti apela cu incredere la Zend_Translate.

Total vizualizari: 5898 5898 afisari   |   Comentarii  4   |   Rating   |   (7 voturi)   |   Timp necesar: 5 min 5 min   |   Nivel de cunostiinte necesar: Mediu  Mediu

Autor: cborodescu Incepator
Adauga la tutoriale favorit Adauga la tutoriale favorite
Pagina:
1
comenteaza printeaza

Atunci cand dezvoltati website-uri dedicate utilizatorilor din intreaga lume si aveti nevoie de o modalitate facila de a integra suport pentru mai multe limbi, puteti apela cu incredere la Zend_Translate.

Iata mai jos o lista cu beneficiile oferite de aceasta librarie:

  • Suport pentru diverse formate ale fisierului sursa: Array, CSV, TBX, TMX, Gettext, Ini, Qt, Xliff, XmlTm
  • Nu exista probleme in a fi utilizata pentru medii multi-thread
  • Contine cateva functii de baza, usor de utilizat
  • Toate formatele utilizate sunt manipulate in exact acelasi mod, astfel daca schimbati fisierul de limba din TMX in CSV nu va fi nici o problema la nivelul codului PHP, trebuind doar sa specificati Adapter-ul nou
  • Posibilitatea de a detecta limba utilizatorului
  • Integrarea mai multe limbi si selectia lor automata in functie de caz

Vom incepe prin a lua in considerare un fisier .csv ca sursa ce va contine textele in limba de interes(engleza, in cazul nostru):

Tutoriale; Tutorials
Stiri; News
Intrebari frecvente; FAQ

Pentru a afisa meniul de mai sus in limba engleza, nu trebuie decat sa utilizati scriptul de mai jos:

<?php 
    require_once("Zend/Translate.php");
    $translate = new Zend_Translate(
                'Zend_Translate_Adapter_Csv', 
                "languages.csv", 
                'en'); 
    echo $translate->_("Tutoriale")."<br />";
    echo $translate->_("Stiri")."<br />";
    echo $translate->_("Intrebari frecvente")."<br />";
    echo $translate->_("Blog")."<br />";
    echo $translate->_("Contact");
?>

Daca pentru "Tutoriale", "Stiri" si "Intrebari frecvente" avem corespondenta in limba engleza, ce se intampla cu "Blog" si "Contact" ? Este foarte simplu: in cazul in care pentru sirul de caractere dat ca parametru nu este gasita nici o traducere, atunci chiar acel sir va fi afisat. Astfel eliminandu-se afisarea unor mesaje de genul "Traducerea nu a fost gasita". Intamplator insa, in cadrul exemplului nostru, cuvintele din romana sunt la identice cu cele din engleza, asadar nu avea rost sa le mai include in fisierul .csv.

Sigur ca acesta este un exemplu banal, menit doar sa va deschida apetitul catre lucrul in Zend Framework, iar de aici puteti merge si mai departe:

  • Afisarea continutului unui site in limba selectate de utilizator de la o adresa de genul: http://www.e-learn.ro/lang/en/
  • Afisarea continutului unui site in functie de setarile utilizatorului
  • Setarea pluralului unor cuvinte din fisierul sursa

Mai multe despre subiect puteti citi aici: http://framework.zend.com/manual/en/zend.translate.html

Pagina:
1
comenteaza printeaza

Cuvinte cheie:   php,   zend framework,   zend translate,   multi language,   translate script

Alte tutoriale PHP:
Noteaza acest tutorial
Rating tutorial
 
(7 voturi)
Pentru a nota acest tutorial, trebuie sa fii logat!
COMENTARII (4) spune-ti parerea
alexandra alexandra , Joi, 10 Noiembrie 2011, ora 07:16
#4

@adry.ro
Salut,
Eu lucrez de ceva vreme cu Zend Framework si pot sa spun ca nu numai tutorialele in limba romana sunt putine, ci si documentia "oficiala" este incompleta. Pana acum nu am folosit Zend_Translate deci nu as putea scrie despre asa ceva. Daca nu gasesti tutoriale, te-as sfatui sa te uiti chiar pe documentatia lor, asta daca nu ai facut-o deja: http://framework.zend.com/manual/en/zend.translate.html.

Raporteaza acest comentariu ca injurios!
adry.ro adry.ro , Sambata, 29 Octombrie 2011, ora 19:39
#3

Tinand cont ca pe net nu prea se gasesc tutoriale despre Zend Framework in limba romana, acest tutorial este bine venit. Cat despre dimensiune, mie personal imi plac cele scurte doar ca as fi preferat sa detaliezi mai multe functii din clasa Zend_Translate.

Raporteaza acest comentariu ca injurios!
Pustiu Pustiu , Luni, 25 Ianuarie 2010, ora 12:02
#2

bravo! dimensiunea nu conteaza ;) ... conteaza ca l-ai scris si acum il pot citi si altii :)

Raporteaza acest comentariu ca injurios!
cborodescu cborodescu , Vineri, 22 Ianuarie 2010, ora 18:46
#1

Chiar daca nu este foarte mare mi se pare ca este un tutorial util pentru cei care cauta o solutie de language support.

Raporteaza acest comentariu ca injurios!
Posteaza un comentariu
Pentru a posta un comentariu, trebuie sa fii logat!
0 TOP UTILIZATORI* 0 0
Tutoriale scrise de claibornelara
claibornelara Rang utilizator claibornelara - Incepator
4550
Tutoriale scrise de mcuemica
mcuemica Rang utilizator mcuemica - Incepator
4460
Tutoriale scrise de ellarichards
ellarichards Rang utilizator ellarichards - Incepator
4415
Tutoriale scrise de emonclercheap
emonclercheap Rang utilizator emonclercheap - Incepator
4285
Tutoriale scrise de beacherrosa
beacherrosa Rang utilizator beacherrosa - Incepator
4165
* Acest top reprezinta punctajele acumulate in ultimele 30 de zile.
AJAX Flash XHTML Illustrator MySQL Powerpoint Sony Vegas Bridge HTML PHP Gimp Fotografie Word XML Photoshop Excel RoR Java Vista Ruby on Rails Outlook CSS SEO Dreamweaver PSD Python Swift 3D Fireworks StyleSheet SWF Verilog JSON Action Script Lightroom COREL DRAW Javascript
Promovare:
Daca faci parte din comunitatea E-learn.ro si doresti promovarea acesteia, poti accesa pagina de promovare.
Arhiva newsletter:
Daca ai ratat un numar mai vechi, sau vrei sa revezi care au fost noutatile E-learn.ro la un moment dat, poti accesa arhiva de newslettere.
  Copyright © 2008-2013 E-LEARN.ro. Toate drepturile rezervate. Termeni si conditii.
Conceput si realizat de Neokinetics Software