formatDecimal - Erro de _locale

Estou tentando usar a função formatDecimal em uma View e recebo a seguinte Mensagem:

Property "PagamentoController._locale" is not defined.

Estou fazendo a chamada da seguinte forma:

echo CNumberFormatter::formatDecimal(10.99);

Não acredito que eu tenha que criar um metodo publico dentro de cada controle chamdo locale. Alguém sabe onde estou errando?

Obrigado




<?php

  $cnf = new CNumberFormatter(Yii::app()->getLocale());

  echo $cnf->formatDecimal(10.99);

?>



formatDecimal não é um método de classe, mas sim um método comum, por isso deve-se instanciar CNumberFormatter. O que acho que no PHP isso deveria ser considerado um bug e gerado um exception. (Mas ninguem me escuta. hahaha)

É requerido uma instância do objeto CLocale para instanciar CNumberFormatter, que pode ser obtida a configurada na sua aplicação, usando Yii::app()->getLocale()

Editado (Enviei incompleto, foi mal)

Quando vc usa um método comum como método de classe, a partir de uma segunda classe, o PHP considera este método como pertencente a primeira classe. Sendo a view parte do controller, ele requer uma variável chamada "_locale" no seu controller.