Forum und email

is_subclass_of

(PHP 4, PHP 5)

is_subclass_of — Prüft ob ein Objekt von der angegebenen Klasse abstammt

Beschreibung

bool is_subclass_of ( mixed $object , string $class_name )

Diese Funktion prüft ob das Objekt objekt von der Klasse class_name abstammt.

Parameter Liste

object

Ein Klassenname oder eine Objektinstanz

class_name

Ein Klassenname

Rückgabewerte

Die Funktion liefert TRUE wenn die Klasse des Objekts object eine Unterklasse von class_name ist, sonst FALSE.

ChangeLog

Version Beschreibung
5.0.3 Als object kann nun auch ein Klassenname anstelle einer Objektinstanz übergeben werden.

Beispiele

Example#1 is_subclass_of() Beispiel

<?php
// Definition einer Klasse
class WidgetFactory
{
  var 
$oink 'moo';
}

// Definition einer Kindklasse
class WidgetFactory_Child extends WidgetFactory
{
  var 
$oink 'oink';
}

// Erzeugung von Objekten
$WF = new WidgetFactory();
$WFC = new WidgetFactory_Child();

if (
is_subclass_of($WFC'WidgetFactory')) {
  echo 
"Ja, \$WFC ist eine Unterklasse von WidgetFactory\n";
} else {
  echo 
"Nein, \$WFC ist keine Unterklasse von WidgetFactory\n";
}


if (
is_subclass_of($WF'WidgetFactory')) {
  echo 
"Ja, \$WF ist eine Unterklasse von WidgetFactory\n";
} else {
  echo 
"Nein, \$WF ist keine Unterklasse von WidgetFactory\n";
}


// ab PHP 5.0.3 funktioniert auch
if (is_subclass_of('WidgetFactory_Child''WidgetFactory')) {
  echo 
"Ja, WidgetFactory_Child ist eine Unterklasse von WidgetFactory\n";
} else {
  echo 
"Nein, WidgetFactory_Child ist keine Unterklasse von WidgetFactory\n";
}
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Ja, $WFC ist eine Unterklasse von WidgetFactory
Nein, $WF ist keine Unterklasse von WidgetFactory
Ja, WidgetFactory_Child ist eine Unterklasse von WidgetFactory