# phpdocumentor/reflectioncommon

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/phpdocumentor-reflectioncommon).**

9,058 stars · 21 forks · PHP · MIT

## Links

- GitHub: https://github.com/phpDocumentor/ReflectionCommon
- awesome-repositories: https://awesome-repositories.com/repository/phpdocumentor-reflectioncommon.md

## Topics

`hacktoberfest`

## Description

ReflectionCommon is a PHP reflection interface library and code analysis abstraction. It serves as a foundation for static analysis by providing a shared specification for representing classes, methods, and properties during programmatic code inspection.

The project standardizes the reflection API to decouple analysis tools from specific PHP reflection implementations. This ensures that different analysis implementations can work interchangeably through a consistent layer of interfaces.

The library covers the domain of PHP code analysis and static analysis tooling, establishing a common way to examine code layouts and metadata.

## Tags

### Programming Languages & Runtimes

- [PHP Code Analysis](https://awesome-repositories.com/f/programming-languages-runtimes/php-code-analysis.md) — Provides a standardized way to analyze PHP source code structures to ensure consistent results across different tools.
- [Reflection Abstractions](https://awesome-repositories.com/f/programming-languages-runtimes/interface-contract-implementations/reflection-abstractions.md) — Defines a common set of reflection contracts to decouple code analysis tools from specific language details.
- [PHP Reflection Libraries](https://awesome-repositories.com/f/programming-languages-runtimes/php-reflection-libraries.md) — Provides a set of standardized interfaces for analyzing code structures and metadata using PHP reflection.
- [Reflection API Standardizations](https://awesome-repositories.com/f/programming-languages-runtimes/reflection-apis/reflection-wrappers/reflection-api-standardizations.md) — Creates a consistent layer over PHP reflection to allow different analysis implementations to work interchangeably.

### Development Tools & Productivity

- [Code Analysis APIs](https://awesome-repositories.com/f/development-tools-productivity/code-analysis-apis.md) — Provides programmatic interfaces to examine code layouts consistently regardless of the underlying implementation. ([source](https://github.com/phpdocumentor/reflectioncommon#readme))

### Software Engineering & Architecture

- [Reflection Abstraction Layers](https://awesome-repositories.com/f/software-engineering-architecture/code-analysis-tools/reflection-abstraction-layers.md) — Implements a common layer that decouples code analysis tools from specific PHP reflection implementations.
- [Implementation-Agnostic APIs](https://awesome-repositories.com/f/software-engineering-architecture/implementation-agnostic-apis.md) — Provides a uniform API for querying code structures that remains independent of the underlying reflection engine implementation.
- [Reflection Interface Contracts](https://awesome-repositories.com/f/software-engineering-architecture/interface-driven-design-patterns/reflection-interface-contracts.md) — Enforces a strict set of interface requirements to ensure consistent behavior across different reflection providers.
- [Type Hierarchies](https://awesome-repositories.com/f/software-engineering-architecture/schema-based-type-systems/type-hierarchies.md) — Establishes a base set of classes and interfaces that provide a consistent type hierarchy for reflection-based tools.

### Testing & Quality Assurance

- [Static Code Analysis Tools](https://awesome-repositories.com/f/testing-quality-assurance/code-quality-review/code-quality-tools/static-code-analysis-tools.md) — Provides a common representation of classes and methods for software that examines code without executing it.
- [Static Analysis Specifications](https://awesome-repositories.com/f/testing-quality-assurance/static-code-analysis/static-analysis-specifications.md) — Provides a shared specification for representing classes, methods, and properties during programmatic code inspection.
