السلام عليكم من فضلكم اريد معرفة ايهما افضل للموقع الذى يحتوى على عدة لغات
smarty
or
المصفوفة المتعددة اللغات
or
else
السلام عليكم من فضلكم اريد معرفة ايهما افضل للموقع الذى يحتوى على عدة لغات
smarty
or
المصفوفة المتعددة اللغات
or
else
ابو مهيتاب
من وجهة نظري المصفوفة أحسن حيث أنك تتيح السهولة في التعديل على اللغة .
''اللهم إني أسالك إيمانا دائما وأسألك قلبا خاشعا وأسألك علما نافعا وأسألك يقينا صادقا وأسألك دينا قيما وأسألك العافية من كل بلية''
'اللهم أغفر للمؤمنين و المؤمنات و المسلمين و المسلمات الأحياء منهم و الأموات'
www.it-scoop.com
المصفوفة قد تكون حل على مستوى التطبيقات الصغيرة , ولكن لن تجدي معك وستخرج عن السيطره عندما يكون التطبيق اكبر , وفي هذه الحاله ستحتاج للعمل مع تقنيات القوالب Template , مثل محرك Smarty
بحسب تجربتي التي استخدمت فيها طريقة الثوابت , فقد كانت الطريقة سهلة جدا وبسيطة وذات فعالية كبيرة , وسهلة التعديل بشكل كبير , كما انها قابلة للتوسعة بشكل بسيط جدا
لتشمل عدد اكبر من اللغات , فقد كان الموقع الذ ي برمجته يضم 3 لغات , وبعد عدد كبير من المحاولات والتجارب استخدمت طريقة الثوابت ,
حيث تعرف لكل لغة صفحة خاصة بها , تضع فيها كل الكونترولات التي بحاجة لترجمة على شكل ثوابت ,
اما اثناء التنفيذ -زمن التنفيذ - فبإمكانك بحسب اللغة المطلوبة , وعبر استخدام
switch
تحديد الملف المطلوب استدعاءة , حتى يتم ضبط الثوابت للقيم الصحيحة الموافقة للغة المطلوبة
والامر الذي يميز الثوابت , انك في حال كتبت ثابت بشكل مغلوط , فإن البرنامج سيشتكي ويقول لك بأن هذا الثابت غير معرف مسبقا , وبالتالي تتفادى المشكلة التي يمكن ان تحدث اثناء استخدام المتحولات , في حال اخطأت بكتابة احدها , فكلنا يعلم بأن بي اش بي حساسة لحالة الاحرف
والسلام
يا اخ joo
انا كده اتلخبطت
هل تقصد استخدام المصفوفة الثنائية كما فى الموقع
http://www.alsaqr.com/vb/showthread.php?t=15325
ام ماذا تقصد بالثوابت
وياريت تعطى مثال لو تفضلت
ابو مهيتاب
المقصود بثوابت هنا استخدام الداله define لتعريف مجموعه من ثوابت
مثلا ملف ar.php يحتوي على ثوابت تضم ثوابت اللغه عربيه اي :
define('WELCOME','اهلا وسهلا');الان في ملف عرض اذا اردت استخدام لغه عربيه في عرض موقع فقط تقوم بتضمين ملف ثوابت باستخدام الداله include او غيرها
include("ar.php");
echo WELCOME;و متغير الثابت WELCOME هو ما قمنا بتعريفه في ملف ar.php
الان لو اردت جعل اللغه الانجليزيه هي لغه اساسيه للموقع فقط قم بتضمين ملف en.php مثلا , وهو يحتوي على مثلا
define('WELCOME','welcome to our site');وملف عرض
include("en.php");
echo WELCOME;طبعا يمكنك استخدام عبارات if او switch لتضمين الملفات بشكل اوتوماتيكي و ايضا استخدام cookies , ارجو ان تكون وضحت فكره . . .
شكرا لك اخ احمد 123 لأنك جاوبت عني , وفعلا كفيت ووفيت , والشرح تبعك هو تماما يلي قصدته وفعليا استخدمته
وجزاك الله عني كل خير
سلام