wyrihaximus/list-classes-in-directory

允许您列出目录和文件中的完全限定类名。

1.7.0 2024-07-16 12:35 UTC

README

Continuous Integration Latest Stable Version Total Downloads Code Coverage License

安装

要通过Composer安装,请使用以下命令,它将自动检测最新版本并将其绑定到^

composer require wyrihaximus/list-classes-in-directory

用法

从多个目录获取类列表。

use function WyriHaximus\Lister;

// $classes now contains a list of full qualified class names from 'src/' and 'tests/'
$classes = Lister::classesInDirectories(
    __DIR__ . '/src',
    __DIR__ . '/tests'
);


// use listInstantiatableClassesInDirectories() or listNonInstantiatableClassesInDirectories() to only consider classes that can actually be instantiated, or not.
$instantiatableClasses = Lister::instantiatableClassesInDirectory(
    __DIR__ . '/src',
    __DIR__ . '/tests'
);
$nonInstantiatableClasses = Lister::nonInstantiatableClassesInDirectory(
    __DIR__ . '/src',
    __DIR__ . '/tests'
);

从一个目录获取类列表。

use function WyriHaximus\Lister;

// $classes now contains a list of full qualified class names from __DIR__
$classes = Lister::classesInDirectory(__DIR__);

// use listInstantiatableClassesInDirectory() or listNonInstantiatableClassesInDirectory() to only consider classes that can actually be instantiated, or not.
$instantiatableClasses = Lister::instantiatableClassesInDirectory(__DIR__);
$nonInstantiatableClasses = Lister::nonInstantiatableClassesInDirectory(__DIR__);

从多个文件获取类列表。

use function WyriHaximus\Lister;

// $classes now contains a list of full qualified class names from 'Bar.php' and 'Foo.php'
$classes = Lister::classesInFiles(
    __DIR__ . '/Bar.php',
    __DIR__ . '/Foo.php'
);

从一个文件获取类列表。

use function WyriHaximus\Lister;

// $classes now contains a list of full qualified class names from 'Foo.php'
$classes = Lister::classesInFile(__DIR__.'/Foo.php');

致谢

本包是使用better reflection的简写函数,并基于示例之一。

许可证

MIT许可证(MIT)

版权所有 © 2024 Cees-Jan Kiewiet

在此特此授予任何人免费获得此软件及其相关文档文件(以下简称“软件”)的副本的权利,无限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许向软件提供者提供软件的人这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和非侵权的保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论此类责任是基于合同、侵权或其他方式,源于、因之或与此软件或其使用或其他方式有关。