2013-04-16 3 views
0

Tests unitaires et utilisation de xdebug mis à part, je souhaite avoir un moyen de lancer un message du navigateur, car une valeur ne devrait pas être présente.Yii trace - utilisation correcte

Disons que: $className = 45;

Si nous avons:

public function setMainClass($className) { 

      if (is_string($className)) { 
       $this->_mainClass = $className; 
      } else { 
       echo Yii::trace(CVarDumper::dumpAsString($className),'vardump'); 
      } 
     } 

Nous obtiendrons cette sortie au navigateur sur la scène du développement. C'est génial.

Je ne suis pas sûr cependant, si c'est une bonne façon d'utiliser Yii :: trace de si je ne l'utilise pas.

Veuillez nous consulter.

Répondre

1

Il n'est pas nécessaire de echo l'appel Yii::trace() (il renvoie void pour que l'écho ne fasse rien). L'autre recommandation est que vous pourriez envisager de changer la catégorie pour ressembler à un alias de chemin comme discussed in the documentation. Par exemple-

} else { 
    Yii::trace(CVarDumper::dumpAsString($className), 'application.models.MyGreatModel'); 
} 
+0

Merci @Linville. Sur index.php j'ai fait une fonction en utilisant la trace ici. J'ai appelé quickDump. Donc, au lieu de cette ligne, j'ai utilisé quickDump ($ quelque chose); J'ai supprimé l'écho comme suggéré. Cela a fonctionné aussi bien. Donc Yii :: trace() semble traiter de l'écho ailleurs sous les tripes de Yii. – MEM