Utilities to scan PHP code and generate class maps.

1.1.1 2024-03-15 12:53 UTC

This package is auto-updated.

Last update: 2024-05-03 12:25:28 UTC


Utilities to generate class maps and scan PHP code.

Continuous Integration


Install the latest version with:

$ composer require composer/class-map-generator


  • PHP 7.2 is required.

Basic usage

If all you want is to scan a directory and extract a classmap with all classes/interfaces/traits/enums mapped to their paths, you can simply use:

use Composer\ClassMapGenerator\ClassMapGenerator;

$map = ClassMapGenerator::createMap('path/to/scan');
foreach ($map as $symbol => $path) {
    // do your thing

For more advanced usage, you can instantiate a generator object and call scanPaths one or more time then call getClassMap to get a ClassMap object containing the resulting map + eventual warnings.

use Composer\ClassMapGenerator\ClassMapGenerator;

$generator = new ClassMapGenerator;

$classMap = $generator->getClassMap();
$classMap->sort(); // optionally sort classes alphabetically
foreach ($classMap->getMap() as $symbol => $path) {
    // do your thing

foreach ($classMap->getAmbiguousClasses() as $symbol => $paths) {
    // warn user about ambiguous class resolution


composer/class-map-generator is licensed under the MIT License, see the LICENSE file for details.