Класс Phalcon\Di\FactoryDefault\Cli

расширяет класс Phalcon\Di\FactoryDefault

Реализует Phalcon\DiInterface, ArrayAccess

Source on GitHub

Это вариант стандартного Phalcon\Di. По умолчанию он автоматически регистрирует все службы, предоставляемые в рамках. Благодаря этому разработчику не нужно регистрировать каждую услугу индивидуально. Этот тип специально соответствующ для применений CLI

Methods

public __construct ()

Phalcon\Di\FactoryDefault\Cli конструктор

public setInternalEventsManager (Phalcon\Events\ManagerInterface $eventsManager) наследуется от Phalcon\Di

Устанавливает внутренний менеджер событий

public getInternalEventsManager () наследуется от Phalcon\Di

Возвращает внутренний менеджер событий

public set (mixed $name, mixed $definition, [mixed $shared]) наследуется от Phalcon\Di

Регистрация службы в контейнере служб

public setShared (mixed $name, mixed $definition) наследуется от Phalcon\Di

Регистрация службы "всегда общий" в контейнере служб

public remove (mixed $name) наследуется от Phalcon\Di

Удаляет службу из контейнера служб также удаляет все общие экземпляры, созданные для службы

public attempt (mixed $name, mixed $definition, [mixed $shared]) наследуется от Phalcon\Di

Попытки зарегистрировать службу в контейнере служб успешны только в том случае, если служба ранее не была зарегистрирована с тем же именем

public setRaw (mixed $name, Phalcon\Di\ServiceInterface $rawDefinition) наследуется от Phalcon\Di

Задает службу с помощью необработанного определения Phalcon\Di\Service

public getRaw (mixed $name) наследуется от Phalcon\Di

Возвращает определение службы без разрешения

public getService (mixed $name) наследуется от Phalcon\Di

Возвращает экземпляр Phalcon\Di\Service

public get (mixed $name, [mixed $parameters]) наследуется от Phalcon\Di

Разрешает службу на основе ее конфигурации

public mixed getShared (string $name, [array $parameters]) наследуется от Phalcon\Di

Разрешает службу, разрешенная служба хранится в DI, последующие запросы для этой службы вернут тот же экземпляр

public has (mixed $name) наследуется от Phalcon\Di

Проверяет, содержит ли DI сервис по имени

public wasFreshInstance () наследуется от Phalcon\Di

Проверяет, является ли последняя служба, полученная через getShared, новым экземпляром или существующим

public getServices () наследуется от Phalcon\Di

Возврат услуг, зарегистрированных в DI

public offsetExists (mixed $name) наследуется от Phalcon\Di

Проверка регистрации службы с помощью синтаксиса массива

public offsetSet (mixed $name, mixed $definition) наследуется от Phalcon\Di

Позволяет зарегистрировать общую службу с помощью синтаксиса массива

<?php

$di["request"] = new \Phalcon\Http\Request();

public offsetGet (mixed $name) наследуется от Phalcon\Di

Позволяет получить общий сервис, используя синтаксис массива

<?php

var_dump($di["request"]);

public offsetUnset (mixed $name) наследуется от Phalcon\Di

Удаляет службу из контейнера служб с помощью синтаксиса массива

public __call (mixed $method, [mixed $arguments]) наследуется от Phalcon\Di

Magic method to get or set services using setters/getters

public register (Phalcon\Di\ServiceProviderInterface $provider) наследуется от Phalcon\Di

Регистрация поставщика услуг.

<?php

use Phalcon\DiInterface;
use Phalcon\Di\ServiceProviderInterface;

class SomeServiceProvider implements ServiceProviderInterface
{
    public function register(DiInterface $di)
    {
        $di->setShared('service', function () {
            // ...
        });
    }
}

public static setDefault (Phalcon\DiInterface $dependencyInjector) наследуется от Phalcon\Di

Установка контейнера внедрения зависимостей по умолчанию для получения статических методов

public static getDefault () наследуется от Phalcon\Di

Возврат последнего созданного DI

public static reset () наследуется от Phalcon\Di

Сбрасывает внутренний DI по умолчанию

public loadFromYaml (mixed $filePath, [array $callbacks]) наследуется от Phalcon\Di

Загружает службы из файла yaml.

<?php

$di->loadFromYaml(
    "path/services.yaml",
    [
        "!approot" => function ($value) {
            return dirname(__DIR__) . $value;
        }
    ]
);

И сервисы могут быть указаны в файле как:

myComponent:
    className: \Acme\Components\MyComponent
    shared: true

group:
    className: \Acme\Group
    arguments:

        - type: service
          name: myComponent

user:
   className: \Acme\User

public loadFromPhp (mixed $filePath) наследуется от Phalcon\Di

Загружает сервисы из конфигурационного файла php.

<?php

$di->loadFromPhp("path/services.php");

И сервисы могут быть указаны в файле как:

<?php

return [
     'myComponent' => [
         'className' => '\Acme\Components\MyComponent',
         'shared' => true,
     ],
     'group' => [
         'className' => '\Acme\Group',
         'arguments' => [
             [
                 'type' => 'service',
                 'service' => 'myComponent',
             ],
         ],
     ],
     'user' => [
         'className' => '\Acme\User',
     ],
];

protected loadFromConfig (Phalcon\Config $config) наследуется от Phalcon\Di

Загружает службы из объекта Config.