PHP - 类/对象 get_declared_classes() 函数



PHP 类/对象 get_declared_classes() 函数用于返回一个数组,其中包含代码中所有类的名称,无论是用户定义的还是内置的。此函数对于查看代码中可用的类非常有用。

语法

以下是 PHP 类/对象 get_declared_classes() 函数的语法:

array get_declared_classes (void)

参数

此函数不接受任何参数。

返回值

get_declared_classes() 函数返回一个数组,其中包含当前脚本中已声明的类的名称。

PHP 版本

get_declared_classes() 函数首次引入到 PHP 4 的核心版本中,并且在 PHP 5、PHP 7 和 PHP 8 中继续轻松运行。

示例 1

以下是 PHP 类/对象 get_declared_classes() 函数的基本示例,用于获取已声明类的名称数组。

<?php
   print_r(get_declared_classes());
?>

输出

以下是以下代码的结果:

Array
(
   [0] => InternalIterator
   [1] => Exception
   .
   .
   .
   [245] => Ds\Set
   [246] => Ds\PriorityQueue
   [247] => Ds\Pair
)

示例 2

在下面的 PHP 代码中,我们将使用 get_declared_classes() 函数,并在定义了一些类之后列出所有已声明的类。

<?php
   // Declare the classes
   class MyClass1 {}
   class MyClass2 {}
   
   $classes = get_declared_classes();
   print_r($classes);
?> 

输出

这将生成以下输出:

Array
(
  [0] => InternalIterator
  [1] => Exception
  .
  .
  .
  [248] => MyClass1
  [249] => MyClass2
)

示例 3

现在,以下代码演示了如何使用 get_declared_classes() 函数检查脚本中是否声明了特定类。

<?php
   // Declare MyClass here
   class MyClass {}

   $classes = get_declared_classes();
   if (in_array('MyClass', $classes)) {
       echo "MyClass is declared.";
   } else {
       echo "MyClass is not declared.";
   }
?> 

输出

这将创建以下输出:

MyClass is declared.

示例 4

此示例显示了在包含另一个定义了其他类的文件后,get_declared_classes() 函数是如何工作的。

<?php
   include '/PHP/PhpProjects/other_file.php';

   $classes = get_declared_classes();
   print_r($classes);
?> 

以下是 other_file.php 文件中编写的代码:

<?php
   class OtherClass {}
?> 

输出

以下是上述代码的输出:

Array
(
  [0] => InternalIterator
  [1] => Exception
  .
  .
  .
  [248] => OtherClass
)
php_function_reference.htm
广告