«phpClub» — архив тем ("тредов"), посвящённых изучению PHP и веб-технологий.
Аноним 2019/02/25 06:01:38  №1354604 1
сап, подскажет мб кто.
В общем у меня есть скрипт пхп вывода значений из mysql, как его засунуть в таблицу на сайте хтмл?
Ответы: >>1359947
Аноним 2019/03/06 02:32:48  №1359947 2
>>1355798

> что без шаблонизатора мы не можем создать полноценную MVC на пхп

В теории - можем. Например, если мы делаем сервер API, который отдает не HTML-страницы, а данные в формате JSON, то шаблоны нам не нужны. Ну и в теории, опять же, мы можем без шаблонов сделать вывод HTML кода кучей операторов echo.

То есть, шаблон - это лишь один из вариантов реализации View.

Я думаю, ты хотел спросить, "можно ли вместо стороннего шаблонизатора использовать встроенный в PHP?" - да, можно, но неудобно на больших проектах.

Урок про шаблонизаторы: https://github.com/codedokode/pasta/blob/master/php/templates.md

>>1354575

Обычно все сервисы создают через контейнер. Сегодня у сервиса нет зависимостей, а завтра они появятся - и тебе придется обходить весь код и заменять создание сервиса на получение через контейнер.

Также, контейнер может поддерживать существование одного экземпляра сервиса.

> если у меня просто вспомогательный класс (сервисного слоя) без зависимостей для контроллера я его просто делаю use и использую.

Для вспомогательных классов можно использовать паттерн Utility Class (класс со статичесикими методами).

> контракты в /app/Contracts а реализации их неизвестено где

Их реализации там, где уместно. Естественно, не в папке Contracts. Вообще, ты можешь посмотреть, как код организован в самом Laravel или стандартных библиотеках к нему.

Если у тебя мало сервисов, можно просто сделать папку App/Services. Если много - то думать, как дробить на части. Можно как-то по смыслу их группировать, по разделу сайта, по компоненту приложения.

>>1354604

По идее так: http://php.net/manual/ru/language.basic-syntax.phpmode.php

Но это даст низкокачественный код, потому читай https://github.com/codedokode/pasta/blob/master/php/templates.md