كيفية بناء تطبيق PHP مع دعم اللغات المتعددة (الإنجليزية والفرنسية والصينية وغيرها ..)

StackOverflow https://stackoverflow.com/questions/691218

  •  22-08-2019
  •  | 
  •  

سؤال

وأنا بناء تطبيق ويب يستخدم LAMP والإطار قالب هندى. وسيكون الموقع لديها الكثير من محتوى ثابت (عنا الصفحة، التنبيهات الخطأ، رسائل البريد الإلكتروني تأكيد الخ ...).

ويجب تطبيق ويب دعم لغات متعددة. هو مناسب النهج التالي؟

سوف

1) يتم استبدال كافة نسخة ثابتة في صفحات القالب هندى (صفحات HTML) من خلال المكالمات إلى الإضافات هندى مثل {انج ملف = 'about.xml' 'عنوان' getTerm =} والتي ترجع سلسلة لعلامة العنوان في اللغة المناسبة

2) about.xml ملف وثيقة XML على خادم الويب التي تعمل بمثابة قاموس لغة متعددة. لذلك سوف يكون العقد XML مثل

<term value="title">
   <en>&lt;a href=&quot;http://stackoverflow.com&quot;&rt;Stackoverflow&lt;/a&rt; is a great site</en>
   <fr>&lt;a href=&quot;http://stackoverflow.com&quot;&rt;Stackoverflow&lt;/a&rt; c'est website magnifique</fr>
   <ch>&lt;a href=&quot;http://stackoverflow.com&quot;&rt;Stackoverflow&lt;/a&rt; complex looking chinese characters I don't udnerstand</ch>
</term>
<term value="signupmessage">
   <en>&lt;a href=&quot;http://stackoverflow.com&quot;&rt;Stackoverflow&lt;/a&rt; great deals!</en>
   <fr>&lt;a href=&quot;http://stackoverflow.com&quot;&rt;Stackoverflow&lt;/a&rt; magnifique deals!</fr>
   <ch>&lt;a href=&quot;http://stackoverflow.com&quot;&rt;Stackoverflow&lt;/a&rt; complex looking chinese characters I don't udnerstand</ch>
</term>
سوف

3) أن http://mywebsite.com/language/index.php هيكل رابط للموقع. للقيام بذلك، سوف بلدي خادم لها صلات رمزية مثل ln -s ./en ./ بحيث نقاط http://mywebsite.com/en/index.php لنفس الصفحة فب كما http://mywebsite.com/fr/index.php، ولكن أنا سوف تحقق من رابط لإعدادات اللغة. أملي هو ان غوغل سوف مؤشر كلا الإصدارين من الموقع.

وهذا هو نهج جيد؟ هو أكس أفضل شكل لتخزين المحتوى لغات مختلفة على الرغم من أنها قد htmlentity المشفرة علامات HTML؟ أنا لم نغفل أي شيء؟

هل كانت مفيدة؟

المحلول

وغير متأكدة من التفاصيل لسؤالك ولكن قد ترغب في إلقاء نظرة على الموقع Zend_Translate .

نصائح أخرى

وXML هو شكل الحاويات وهذا الاستخدام من أنها ليست سيئة للغاية. لديها ميزة كونها البشرية للقراءة نسبيا باستثناء الكيانات HTML. هل يمكن أن حاول استخدام المقاطع CDATA لذلك. ومن مزايا استخدام XML لهذا هو أنه لا يمكن استخدام DTD للتحقق من أن كل اللغات لها الترجمات الحالية لجميع المفاتيح. تأكد من ترميز الملف باستخدام UTF-8 أو UTF-16 وربما يساعد إذا كنت وضعت الترميز في الجزء العلوي من الملف. أود أن أوصى UTF-8.

وأما عن كيفية تحميل البيانات XML ودمجها في الصفحة، وأنا لا أعرف "هندى" ولكن النهج العام يبدو معقولا. الجانب السلبي الوحيد الذي أستطيع أن أراه هو أن لديك لاطلاق سراح جميع الترجمات في وقت واحد (من الصعب تجنب هذه المشكلة).

وشيء واحد أنا نلاحظ أن استخدام الفصل كما رمز اللغة للغة الصينية. يجب عليك استخدام زكية . هذا هو رمز ISO لذلك. الفصل غير شيء آخر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top