За последние 24 часа нас посетили 16666 программистов и 1690 роботов. Сейчас ищут 824 программиста ...

PHP-DI

Тема в разделе "PHP для новичков", создана пользователем Dimon2x, 6 май 2018.

  1. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.211
    Симпатии:
    186
    http://php-di.org/doc/getting-started.html

    Пробую создать класс, как написано в инструкции

    PHP:
    1. $builder = new DI\ContainerBuilder();
    и пишет, то, что класс не найден.

    Если написать
    PHP:
    1. use DI\ContainerBuilder;
    то IDE его найти не может, почему? Автолоад подключил, да же для этого создал отдельный проект, что бы не было ничего лишнего.

    В версии 5.4, такого не было, всё работало нормально.
    --- Добавлено ---
    Только что попробовал установить версию 5.4, всё работает, а новая версия не работает.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    1. composer require php-di/php-di
    2. include 'vendor/autoload.php'
     
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    неймспейсы доки пожуй
     
  4. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.211
    Симпатии:
    186
    А может я туплю
     
  5. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    Автолоад композера не подключил видимо. IDE находит/не находит не так важно (просто неудобство), главное чтоб php находил.
     
  6. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.211
    Симпатии:
    186
    @mkramer @igordata

    Когда к аргументу приписывать класс это и есть dependency injection?

    PHP:
    1. public function myFoo(User $user)
    2. {
    3.  
    4. }
     
  7. ElisDN

    ElisDN Активный пользователь

    С нами с:
    13 фев 2018
    Сообщения:
    605
    Симпатии:
    130
    Нет.
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Харош! :D

    1. переведи термин
    2. подумай, зачем это используется
    3. прикинь, как это будет работать, если просто к аргументу приписать класс
    4. почувствуй разницу
     
  9. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    igordata, ты сейчас с кем разговаривал? Димке некогда думать, он пишет очередной вопрос
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    6ля сука аватарка капец :D я тебя в новом халате не признал, жесть
     
    MouseZver нравится это.