無料スクリプト配布のPHP.TO   PHPの実用的なtips PHPマニュアル MySQLマニュアル Apacheマニュアル PostgreSQLマニュアル マニュアル検索    

is_subclass_of

(PHP 4, PHP 5)

is_subclass_of??????????

bool is_subclass_of ( mixed $object , string $class_name [, bool $allow_string = TRUE ] )

? object ??? class_name ???

??

object

???????? ??????????

class_name

??

allow_string

?? false ?? ???? object ????? ???????????

?

??? object superclass ????? TRUE? FALSE ??

?

5.3.9 ?? allow_string ??
5.3.7 class_name ???????
5.0.3 object ??? (??) ??

1 is_subclass_of()

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

// ??
class WidgetFactory_Child extends WidgetFactory
{
  var 
$oink 'oink';
}

// ??
$WF = new WidgetFactory();
$WFC = new WidgetFactory_Child();

if (
is_subclass_of($WFC'WidgetFactory')) {
  echo 
"yes, \$WFC is a subclass of WidgetFactory\n";
} else {
  echo 
"no, \$WFC is not a subclass of WidgetFactory\n";
}


if (
is_subclass_of($WF'WidgetFactory')) {
  echo 
"yes, \$WF is a subclass of WidgetFactory\n";
} else {
  echo 
"no, \$WF is not a subclass of WidgetFactory\n";
}


// PHP 5.0.3 ?????
if (is_subclass_of('WidgetFactory_Child''WidgetFactory')) {
  echo 
"yes, WidgetFactory_Child is a subclass of WidgetFactory\n";
} else {
  echo 
"no, WidgetFactory_Child is not a subclass of WidgetFactory\n";
}
?>

??????

yes, $WFC is a subclass of WidgetFactory
no, $WF is not a subclass of WidgetFactory
yes, WidgetFactory_Child is a subclass of WidgetFactory

2 is_subclass_of() ????

<?php
// ??
interface MyInterface
{
  public function 
MyFunction();
}

// ????
class MyClass implements MyInterface
{
  public function 
MyFunction()
  {
    return 
"MyClass Implements MyInterface!";
  }
}

// ?????
$my_object = new MyClass;

//  5.3.7 ?????

// ?????
if (is_subclass_of($my_object'MyInterface')) {
  echo 
"Yes, \$my_object is a subclass of MyInterface\n";
} else {
  echo 
"No, \$my_object is not a subclass of MyInterface\n";
}

// ??????
if (is_subclass_of('MyClass''MyInterface')) {
  echo 
"Yes, MyClass is a subclass of MyInterface\n";
} else {
  echo 
"No, MyClass is not a subclass of MyInterface\n";
}
?>

??????

Yes, $my_object is a subclass of MyInterface
Yes, MyClass is a subclass of MyInterface

:

????????? autoloader ??



powered by SEO.CUG.NET