13 Stimmen

Abrufen des Modellnamens aus der Modellinstanz YII

Wie kann ich den Modellnamen aus der Modellinstanz erhalten. Für e.x.

$model=neuer Staat;

hier, Zustand ist Modell $model ist die State-Modellinstanz.

Ich möchte Modellname d.h. Zustand von $model d.h. Modellinstanz erhalten.

15voto

Matt Punkte 1133

Fügen Sie diese Methode in Ihre State-Klasse ein

public function getModelName()
{
    return __CLASS__;
}

und nennen Sie es so:

$model = new State();
echo $model->getModelName();

15voto

tonino.j Punkte 3727

Get_class() - Gibt den Namen der Klasse eines Objekts zurück

string get_class ([ object $object ] )

Sie verwenden es daher wie folgt: $modelname=get_class($modelinstance);

->gibt eine Zeichenkette zurück.

1voto

Verwenden Sie diese PHP-Methode: get_class

 print get_class($object);

0voto

serghei Punkte 2746
<?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 
}

0voto

Um den Zustand zu erhalten, wie die Frage gestellt, können Sie dies tun: -

basename(get_class($model))

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X