accessRules usando expression

Teria como utilizar o accessRules passando um regra que so pode visualizar o action se a expression for verdadeira tipo o codigo abaixo:


 public function accessRules(){

           session_start();

           if(isset($_SESSION['usuario'])):

               $logado = 1;

           endif;

           return array(

                        array('allow',

                            'actions'=>array('meuspedido','viewpedido','enviarlista'),

                            'expression'=> "{$logado}==1",

            ));

        }



Pois este que fiz nao esta funcionando, como eu poderia fazer isso, so podera visualizar se a sessao existe, caso de como eu faria e como direcionar o usuario a outra action caso a resposta seja falsa.

Obrigado Galera.


 public function accessRules(){

       	return array(

                        array('allow',

                            'actions'=>array('meuspedido','viewpedido','enviarlista'),

                            'expression'=> 'isset($_SESSION["usuario"])',//aqui use aspas simples fora, isset vai retornar true or false

            ));

        }



Nao esta funcionando pois mesmo asssim ele entra no action, mesmo nao existindo a sessao. sera que nao tem como fazer?