• JsonResponse symfony как использовать кириллицу?

    @bears
    По-моему там только одну константу можно передать в setEncodingOptions
    $response = new JsonResponse(['message' => 'Привет!']);
    $response->setEncodingOptions(JSON_UNESCAPED_UNICODE);
    
    return $response;
    Ответ написан
    2 комментария
  • Как удалить script src с помощью Pure JS?

    profesor08
    @profesor08 Куратор тега JavaScript
    Это базовые вещи, которые стыдно спрашивать.

    let script = document.querySelector(`[src="/page/some.js"]`);
    script.parentNode.removeChild(script);
    Ответ написан
    Комментировать
  • Зачем нужен PHPDoc в php-7?

    YokiToki
    @YokiToki
    PHP-разработчик
    Еще можно добавить что они используются статическими анализаторами, а так же различными IDE (для того же статического анализа)
    Ответ написан
    Комментировать
  • Как вы проектируете классы в ООП и их взаимодействие?

    Adamos
    @Adamos
    Делите ТЗ на модули, определяете их внешние интерфейсы (то, что одни модули могут запрашивать у других), стараетесь их минимизировать.
    Например, модуль авторизации и аутентификации - это много всего внутри, но снаружи - только общие данные юзера (для вывода) и возможность узнать, авторизован он или нет. Если реализованы права пользователей - то прочим модулям совершенно не нужно знать, как именно (например, принадлежит ли пользователь к какой-то группе). Им нужно узнать, есть ли у него конкретный уровень доступа к конкретному модулю или нет.
    Когда определились с модулями - делаете внутри каждого из них аналогичное разбиение на классы: сначала интерфейс, потом потроха.
    И только перейдя к реализации каждого класса, можете обернуться на свою процедурщину и посмотреть - есть ли код, который можно оттуда использовать как сырье для методов класса.
    Ответ написан
    Комментировать
  • Зачем нужен __invoke и когда его нужно использовать?

    @bkosun
    Метод __invoke() позволяет определить логику работы объекта, при попытке обратиться к нему как к обычной функции. Этот метод может использоваться для передачи класса, который может действовать как замыкание, или просто как функция.

    Метод __invoke - это способ, которым PHP может поддерживать функции псевдо-первого класса.

    https://ru.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D...

    Реальный пример:

    <?php
    class ExampleMiddleware
    {
        /**
         * Example middleware invokable class
         *
         * @param  \Psr\Http\Message\ServerRequestInterface $request  PSR7 request
         * @param  \Psr\Http\Message\ResponseInterface      $response PSR7 response
         * @param  callable                                 $next     Next middleware
         *
         * @return \Psr\Http\Message\ResponseInterface
         */
        public function __invoke($request, $response, $next)
        {
            $response->getBody()->write('BEFORE');
            $response = $next($request, $response);
            $response->getBody()->write('AFTER');
    
            return $response;
        }
    }


    $subject->add( new ExampleMiddleware() );

    www.slimframework.com/docs/v3/concepts/middleware.html

    UPD:

    https://stackoverflow.com/questions/888064/php-5-3...
    Ответ написан
    Комментировать