Wpis z mikrobloga

Chciałbym oprzeć swoją aplikację #angular o bazę danych #mysql, korzystając z #php (wiem, że można nodem, ale chcę wejść w php). Jako że z backendu jestem nowicjuszem, mam kilka pytań.
1. Czy jest jakaś integracja między Angularem/JavaScriptem a PHP tak, jak między HTML a PHP (piszę sobie jeden kod obok drugiego w jednym pliku), czy też jedyna (albo jedyna sensowna) komunikacja odbywa się przez API? W pliku php mógłbym przecież bezpośrednio ściągać dane z serwera i echować je do HTML-a.
2. Jeśli mam stworzyć osobne pliki php (wystawić API) na serwerze, a nie w folderze projektu, to nie będę mógł ich umieścić na githubie. Chcę zaś pokazać światu, że te funkcje na serwerze napisałem tak i tak. Jaka jest praktyka? Powinienem skopiować te pliki i umieścić je w strukturze folderów projektu angulara, choć nie są one z tym projektem powiązane bezpośrednio? Jak nazwać taki folder?
#naukaprogramowania
  • 8
Jeśli mam stworzyć osobne pliki php (wystawić API) na serwerze, a nie w folderze projektu, to nie będę mógł ich umieścić na githubie.


@lunaexoriens: czemu? Robisz strukturę projektu
*.*
docker-compose.yml
server/
client/

Kiedyś coś próbowałem z łączeniem vue i symfony (tak jak jest to natywnie laravel+vue) ale za dużo z tym #!$%@? i wolę wystawić api i oddzielnie mieć klienta.
Pobierz
źródło: comment_brvLkFYGiYVLMxDKteyk9sx1jS49gP1K.jpg
via Wykop Mobilny (Android)
  • 1
@lunaexoriens: zacznijmy od tego czy chcesz oddzielny frontend (SPA, tzn. front odpytuje backendu) czy renderować widoki po stronie serwera.

Drugie podejście jest starsze, pierwsze nowsze.

Angular, React, Vue to podejście z oddzielnym frontendem, który komunikuje się po REST API z backendem.

Jeśli nie chcesz tego i po staremu chcesz renderować po stronie serwera, to nie baw się tylko weź taki framework. Do PHP to jest Symfony, Laravel itd.

Robienie tego z
via Wykop Mobilny (Android)
  • 0
@ElGovanni: widzę że masz podejście Docker-first. Podczas developmentu też używasz Dockera? Tzn. uruchamiasz aplikację na Dockerze tylko przy wdrożeniu czy też jak piszesz kod? Wiem że ludzie od Pythona tak robią. Od PHP pewnie też bo język skryptowy? Bo ja z Javy to mam trochę trudniej kopiować jara za każdym razem.
@mk321: Tak, tak, chodzi o aplikację SPA i do tej pory korzystałem właśnie z API, komunikując się ze swoimi bazami Firebase. Teraz jak zacząłem się interesować PHP, napatrzyłem się na kod PHP pomiędzy kodem HTML (jak w WordPressie) i zacząłem się zastanawiać, czy jakoś tak nie powinienem też pisać w Angularze, tyle że nie miałem pojęcia jak się za to zabrać i czy w ogóle powinienem tak kombinować. Dlatego chciałem się
Dlatego chciałem się upewnić, czy API to najlepsze podejście. Dzięki, teraz rozumiem, że php z html to inna architektura aplikacji niż SPA z API.


@lunaexoriens: są jeszcze hybrydówki np. https://blog.pusher.com/why-vuejs-laravel/ , czyli back wysyła dane do jakiegoś systemu szablonów (np. blade), a tam wstrzykiwane są komponenty vue/react w odpowiednie miejsca w htmlu które renderuje już front, ale to raczej rozwiązanie dla staroszkolnych stron w MPA w których trzeba dodać coś co
Od PHP pewnie też


@mk321: potwierdzam, narzut jest minimalny a php.ini i extensiony to naprawdę ciężko spieprzone tematy. Dużo wygodniej jest wszystko zamknąć w kontenerze.

@lunaexoriens: od siebie jeszcze dodam, że nieważne które podejście wybierzesz - PHP bez frameworka nie ruszaj, bo będzie śmierdziało. Polecam Symfony, a najlepiej to w ogóle jakiś inny język do backendu. ( ͡° ͜ʖ ͡°)
widzę że masz podejście Docker-first. Podczas developmentu też używasz Dockera?


@mk321: docker na dev i prod, mega wygodne rozwiązanie bo praktycznie na CD zmienia się tylko .env i wszystko śmiga samo.