2012-02-01 14 views
0

Symfony2の翻訳者に問題があります。Symfony2翻訳、パラメータが機能しない

私は(ここでは簡略化され)てDateTimeFormatterクラスがあります:翻訳ファイルで

<?php 

namespace Project\CommonBundle\Util; 

use DateTime; 
use Symfony\Component\Translation\TranslatorInterface; 

class DateTimeFormatter 
{ 
    private $translator; 

    public function __construct(TranslatorInterface $translator) 
    { 
     $this->translator = $translator; 
    } 

    public function format(DateTime $datetime, array $options = array()) 
    { 
     $delta = time() - $datetime->getTimestamp(); 

     return $this->translator->trans('datetime_formatter.seconds_ago', array('%seconds%', $delta); 
    } 
} 

を:

datetime_formatter: 
    seconds_ago: %seconds% seconds ago 

そして、私はそれをサービスとして構成された:

parameters: 
    datetime_formatter.class: Skepin\CommonBundle\Util\DateTimeFormatter 
services: 
    common.util.datetime_formatter: 
      class: %datetime_formatter.class% 
      arguments: [@translator] 

問題があります:私がそれを使用すると、表示されるテキストは%seconds% seconds agoであり、パラメータは置き換えられません。私は何が欠けていますか?

ありがとうございます!

答えて

0

解決問題:

return $this->translator->trans('datetime_formatter.seconds_ago', array('%seconds%' => $delta); 

の代わり:

return $this->translator->trans('datetime_formatter.seconds_ago', array('%seconds%', $delta); 

愚かなエラー...

関連する問題