Obtener el nombre del modelo de instancia de modelo YII
Pregunta
¿Cómo puedo obtener el nombre del modelo de instancia de modelo. Para e.x.
$ Modelo = nuevo Estado;
aquí, Estado es el modelo $ Modelo es instancia de modelo de Estado.
Quiero conseguir el nombre del modelo es decir Estado de $ instancia de modelo modelo es decir.
Solución
get_class () - Devuelve el nombre de la clase de un objeto
string get_class ([objeto $ objeto])
Por lo tanto, se utiliza de esta manera: $ ModelName = get_class ($ modelinstance);
-.> Devuelve una cadena
Otros consejos
añadir este método para su Clase Estado
public function getModelName()
{
return __CLASS__;
}
y lo llaman así:
$model = new State();
echo $model->getModelName();
El uso de este método de 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
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow