awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
PHP-DI avatar

PHP-DI/PHP-DI

0
View on GitHub↗
php-di.org↗

PHP DI

PHP-DI is an inversion of control container designed to manage object lifecycles and dependency resolution within PHP applications. It functions as a centralized registry that automates the wiring of components, allowing for the decoupling of services from their concrete implementations.

The library distinguishes itself by utilizing reflection to inspect class constructor signatures, enabling automatic dependency injection without requiring manual configuration for standard scenarios. It supports recursive resolution of dependency graphs and provides mechanisms for lazy object instantiation, which defers the creation of heavy services until they are accessed.

The framework facilitates modular application architecture through configuration composition, allowing developers to merge and override service definitions across multiple files. It also supports native code configuration, which ensures that service mappings remain compatible with standard static analysis tools, editor auto-completion, and refactoring workflows. Additionally, the container provides capabilities for dynamic function execution, where dependencies are automatically resolved and injected into callables at runtime.

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

Features

  • Dependency Injection Containers - Manages object instantiation and dependency resolution by inspecting type hints and configuration files in applications.
  • Reflection-Based Dependency Resolution - Inspects class constructor signatures at runtime to automatically identify and instantiate required dependencies without explicit configuration.
  • Dependency Injection Frameworks - Manages object lifecycles and class dependencies in applications by automatically resolving constructor parameters and service requirements at runtime.
  • Automatic Constructor Injection - Performs automatic dependency injection by resolving class constructor parameters through type-hint inspection.
  • Inversion-of-Control Containers - Automates the lifecycle and wiring of application objects to simplify complex dependency graphs.
  • Configuration Builders - Offers a chainable interface for defining service mappings that allows developers to override or extend definitions through modular configuration.
  • Lazy Loading - Defers the instantiation of heavy objects by injecting lightweight placeholders that trigger actual creation only upon first access.
  • Dynamic Method Invokers - Invokes callables and methods by automatically injecting required dependencies from a central registry to simplify complex logic.
  • Custom Object Instantiation - Provides lazy object instantiation using a factory pattern that resolves missing constructor dependencies only when they are needed.
  • Callable Wiring - Provides mechanisms for binding container providers directly to functions or methods to enable automatic dependency injection at runtime.
  • Modular Configuration Composition - Supports merging multiple configuration files and overriding existing definitions to extend or replace service registrations within complex architectures.
  • Native Code Configurations - Allows defining dependency mappings using standard language syntax to gain access to editor features like auto-completion and static analysis.
  • Recursive Dependency Resolution - Traverses the dependency graph by resolving nested requirements until all objects in the chain are fully instantiated.
  • Service Locators - Provides a registry for centralized access to application services and objects to decouple components from their concrete implementations.
  • Modular Application Architectures - Facilitates modular application architecture by composing multiple configuration files to override or extend service definitions across modules.
2,773 نجوم·322 تفرعات·PHP·MIT·1 مشاهدة

سجل النجوم

مخطط تاريخ النجوم لـ php-di/php-diمخطط تاريخ النجوم لـ php-di/php-di

مجموعات مختارة تضم PHP DI

مجموعات منسقة بعناية يظهر فيها PHP DI.
  • PHP Dependency Injection Libraries

بدائل مفتوحة المصدر لـ PHP DI

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع PHP DI.
  • ets-labs/python-dependency-injectorالصورة الرمزية لـ ets-labs

    ets-labs/python-dependency-injector

    4,805عرض على GitHub↗

    This is a dependency injection framework and inversion of control container for Python. It decouples object creation from business logic by managing how services and their dependencies are assembled, delivered, and linked within an application. The framework is distinguished by its ability to perform automated component wiring, using import hooks and decorators to inject dependencies into functions and classes across different modules. It supports non-blocking flows through an asynchronous dependency resolver and manages the initialization and shutdown sequences of shared external resources a

    Pythonaiohttpasynciodependency-injection
    عرض على GitHub↗4,805
  • uber-go/fxالصورة الرمزية لـ uber-go

    uber-go/fx

    7,354عرض على GitHub↗

    Fx is a dependency injection framework and application lifecycle manager for Go. It functions as a component model container that automates the instantiation and connection of components by analyzing constructor parameters and return values to resolve complex dependency graphs. The framework distinguishes itself through module-based component bundling, which encapsulates related constructors into reusable units to manage visibility and logic. It provides advanced resolution capabilities, including mapping concrete types to interfaces for decoupling, resolving dependency ambiguities via unique

    Goapp-frameworkdependency-injectionframework
    عرض على GitHub↗7,354
  • microsoft/tsyringeالصورة الرمزية لـ microsoft

    microsoft/tsyringe

    5,960عرض على GitHub↗

    tsyringe is a TypeScript dependency injection container and inversion of control framework. It decouples class implementations from object creation by managing dependencies and object lifecycles using decorators and metadata. The framework features a hierarchical container system where child containers can maintain independent registration scopes and fall back to parent containers for dependency resolution. It provides a provider system that controls object longevity through singleton and transient instantiation rules. The system supports recursive constructor injection and handles circular

    TypeScriptcontainerdecoratorsdependency
    عرض على GitHub↗5,960
  • jeffijoe/awilixالصورة الرمزية لـ jeffijoe

    jeffijoe/awilix

    4,088عرض على GitHub↗

    Awilix is a JavaScript dependency injection framework and inversion of control container. It provides a centralized system for registering and resolving services, decoupling application components by automating how dependencies are created and passed to the functions or classes that require them. The framework features an automatic module loader that scans the filesystem using glob patterns to register dependencies based on filenames and exports. It supports parameter-name-based injection and proxy-based resolution to manage how dependencies are delivered to constructors and functions. The s

    TypeScriptawilixdependency-injectionioc
    عرض على GitHub↗4,088
عرض جميع البدائل الـ 30 لـ PHP DI→

الأسئلة الشائعة

ما هي وظيفة php-di/php-di؟

PHP-DI is an inversion of control container designed to manage object lifecycles and dependency resolution within PHP applications. It functions as a centralized registry that automates the wiring of components, allowing for the decoupling of services from their concrete implementations.

ما هي الميزات الرئيسية لـ php-di/php-di؟

الميزات الرئيسية لـ php-di/php-di هي: Dependency Injection Containers, Reflection-Based Dependency Resolution, Dependency Injection Frameworks, Automatic Constructor Injection, Inversion-of-Control Containers, Configuration Builders, Lazy Loading, Dynamic Method Invokers.

ما هي البدائل مفتوحة المصدر لـ php-di/php-di؟

تشمل البدائل مفتوحة المصدر لـ php-di/php-di: ets-labs/python-dependency-injector — This is a dependency injection framework and inversion of control container for Python. It decouples object creation… uber-go/fx — Fx is a dependency injection framework and application lifecycle manager for Go. It functions as a component model… microsoft/tsyringe — tsyringe is a TypeScript dependency injection container and inversion of control framework. It decouples class… jeffijoe/awilix — Awilix is a JavaScript dependency injection framework and inversion of control container. It provides a centralized… typestack/typedi — TypeDI is a TypeScript dependency injection container and inversion of control tool. It functions as a centralized… fuzhengwei/small-spring — Small-Spring is a simplified Java implementation of the Spring framework designed to study the internal architecture…