我有这个实体的 __toString 方法:
/**
* String
*
* @return string
*/
public function __toString()
{
// I Have:
// (EMR132 - Escuela Superior Mariano Moreno) Primary - 3 Bº Degree - Afternoon Shift
// I Want:
// (EMR132 - Escuela Superior Mariano Moreno) Primario - 3er Grado Bº - Turno tarde
$levels = array(
'primary' => 'Degree',
'secondary' => 'Year',
);
return sprintf("(%s) %s - %s %sº %s - %s Shift", // Translate Format
$this->school,
ucfirst($this->level), // Translate (fixed values)
$this->degree,
$this->division,
$levels[$this->level], // Translate (fixed values)
ucfirst($this->shift) // Translate (fixed values)
);
}
我需要在方法内翻译字符串。但是不可能在实体内部获得服务(翻译器)。
如何创建可翻译的 __toString 方法?