Yii Framework Forum: مشكلة مع الترجمة - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

مشكلة مع الترجمة مشكلة مع الترجمة

#1 User is offline   abuzarmesry 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 21
  • Joined: 11-August 14

Posted 22 May 2015 - 07:08 PM

In a view:

echo \Yii::t('app','Home');




In config\web.php:

'language' => 'ar',
'components' => [
        'i18n'=>array(
            'translations' => array(
                'app*'=>array(
                    'class' => 'yii\i18n\PhpMessageSource',
                    'basePath' => "@app/messages",
                    'sourceLanguage' => 'en_US',
                    'fileMap' => array(
                        'app'=>'app.php',
                        
                    )
                ),
                'yii'=>array(
                    'class' => 'yii\i18n\PhpMessageSource',
                    'basePath' => "@app/messages",
                    'sourceLanguage' => 'en_US',
                    'fileMap' => array(
                        'yii'=>'yii.php',
                    )
                )
           )
       )
],


In vendor\yiisoft\yii2\messages\ar\yii.php:

<?php
return [
    'Home' => 'الرئيسية',
];



وعند التصفح تكون النتيجة طباعة اللفظ
Home
وليس اللفظ
الرئيسية
أليس من المفترض أن تكون النتيجة عكس ذلك؟
أرجو المساعدة ....

0

#2 User is offline   Muaid 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 138
  • Joined: 25-October 10
  • Location:Saudi Arabia

Posted 05 August 2015 - 03:09 AM


ماظهر لك صحيح لوجود خطأ بسيط، لو تلاحظ بهذا السطر

echo \Yii::t('app','Home');


انت استدعيت ترجمة Home من app، وحسب الكود بالاعدادات فإن app عبارة عن ملف اسمة app.php موجود في مجلد @app/messages حسب ماانت حددت في ملف الإعدادات

'basePath' => "@app/messages",


فيصبح الملف هنا

MY_PROJECT/messages/app.php

وليس

vendor\yiisoft\yii2\messages\ar\yii.php

لان vendor خاص ب composer

كل ماعليك فعله هو عمل مجلد messages بالمجلد الرئيسي للمشروع وإنشاء ملف app.php داخل هذا المجلد

واضف الكود التالي في ملف app.php

<?php

  return [  'Home' => 'الرئيسية',];


اتوقع تكون وجدت الحل وأتمني ان اكون قد اجبت على استفسارك، عذرا علي التأخير ولاكن قد يستفيد احد آخر من الاجابة، تحياتي

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users