2016-10-14 11 views
1

私のプロジェクトでは、自分のモジュールの1つで動的サイジングを提供しようとしています。私は翻訳されたテキストの文字列の長さをどのように得ることができるのかをyii2国際化で把握しようとしています。例えばYii2翻訳メッセージの長さを取得する方法

<?php 
     //I am getting the name from the database. Assume name to be "Hello" 
     $name = $gettingNameFrom->db; 

     //Now $name is equal to string "Hello" 

     //The below function will dump the output to be int(5) as the length of hello is 5 
     var_dump(strlen($name)); 

     //Now I want to apply translation to the above name in the db. 
     // I have all my translation configured and working fine. 

     echo Yii::t('app','{0}',[$name]); 
     //I have configured fo french language. 
     // the above output for "Hello" in french would be "Bonjour". 



    ?> 

が今どのように私は翻訳されたテキストの長さを得ることができますか?このトピックについてオンラインでヘルプを見つけることができません。どんな助けもありがたい。

ありがとうございます!

答えて

2
$translated = Yii::t('app', $name); 
var_dump(strlen($translated)); 
+0

いいえ、それは役に立ちません。その長さが** "文字列(37)"になる@MISSING:app.Hello FOR LANGUAGE fr "" **。しかし、翻訳ファイルには翻訳があります。言語を切り替えると、テキストがHelloからBonjourに変更されます。 –

+0

'$ translated = Yii :: t( 'app'、$ name);' – Bizley

関連する問題