Obtenir le nom du modèle d'instance de modèle YII
Question
Comment puis-je obtenir le nom du modèle d'instance de modèle. Pour e.x.
$ modèle = nouvel Etat;
ici, État est le modèle $ Modèle est par exemple de modèle d'État.
Je veux obtenir le nom du modèle i.e. État de $ instance de modèle i.e. modèle.
La solution
get_class () - Retourne le nom de la classe d'un objet
string get_class ([objet objet $])
donc vous l'utiliser comme ceci: $ modelname = get_class (modelinstance de $);
-.> Retourne une chaîne
Autres conseils
ajouter cette méthode à votre classe Etat
public function getModelName()
{
return __CLASS__;
}
et l'appeler comme ceci:
$model = new State();
echo $model->getModelName();
Utilisez cette méthode PHP: get_class
print get_class($object);
<?php
class Item extends CActiveRecord
{
public function getBaseModelName()
{
return __CLASS__;
}
public function getCalledClassName()
{
return get_called_class();
}
}
class Product extends Item {}
class Service extends Item {}
class ProductController extends CController
{
$model = new Product;
echo $model->baseModelName; // Item
}
class ServiceController extends CController
{
$model = new Service;
echo $model->calledClassName; // Service
echo get_class($model); // Service
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow