Penso che la tua domanda potrebbe essere molto specifica per PHP, in quanto non riesco a vedere nessuna delle altre tecnologie di back-end che menzioni di essere usata in questo modo.
PHP è un esempio divertente in quanto può essere (in un modo piuttosto brutto che posso aggiungere) visto come un linguaggio all-in-one per quanto riguarda molti progetti web. Puoi eseguire le tradizionali attività " back-end ", ad esempio le operazioni su file e database, creando al contempo markup " front-end ".
Questo può chiaramente portare a un pasticcio di spaghetti in cui non esiste una vera separazione di preoccupazione, quindi nella mia mente dovrebbe essere davvero disapprovato. Per un ottimo esempio, se sfogli la fonte wordpress puoi spesso perderti - e questo è un progetto in cui incolpo la lingua, l'organizzazione della base di codice è in realtà molto buona.
Questo può essere risolto, in qualche modo, usando un " motore di template " (come Smarty ) ) - ma è ancora PHP che sta costruendo il "front-end" pur fornendo anche la funzionalità "back-end". Questa è stata una decisione intenzionale dietro il design di PHP, tuttavia è dopotutto un " processore ipertestuale "!
Quindi PHP può facilmente adattarsi agli usi " front-end " e " back-end ", che dovrebbero chiarire il tuo esempio. Quindi è molto probabile che PHP stia elaborando e costruendo tutto il mark-up per un front-end, ma effettuerà richieste da qualche altra parte per raccogliere i dati richiesti - molto probabilmente un servizio scritto in uno di questi le lingue di cui sopra.
Personalmente, ritengo che l'intera terminologia "back-end" e "front-end" sia un po 'obsoleta forse. Preferirei che le cose venissero semplicemente indirizzate lato client e lato server; quindi non c'è vera ambiguità. *
Di recente ho visto una specifica del client che richiedeva un sistema di back-end scritto in node.js e strumenti associati, ma volevo che la build front-end utilizzasse un framework PHP (Laravel). Questo si presenta con molti costi associati, e nella mia mente - non è una soluzione elegante e può causare alcuni problemi su tutta la linea.
Personalmente, questo tipo di configurazioni sembra che qualcuno abbia inutilmente caricato PHP in un altro stack - il che significa che sono necessarie più risorse di quelle effettivamente necessarie, il personale di manutenzione ha bisogno di esposizione a una più ampia gamma di tecnologie e ci sono più punti di errore .
Inoltre, penso anche che ci siano pochissimi scenari che giustificano questo tipo di stack intermedio; la maggior parte dei linguaggi / framework di back-end sono perfettamente in grado di generare il mark-up richiesto per il front-end. Anche se sto per essere corretto lì.
* Però, per trasformare la tua domanda in testa ... E i sistemi di back-end costruiti usando Javascript? (node.js;))
Modifica
Dopo aver letto un commento di @itsbruce, ho deciso di chiarire cosa intendo con l'ambiguità della mia terminologia "front-end" / "back-end".
Tradizionalmente questa terminologia sarebbe andata bene, architettonicamente le applicazioni web erano molto più semplici - e oserei dire, molto più scemo. Nella mia mente è molto più chiaro dire "Lato server" e "Lato client", e questo diventa sempre più chiaro mentre la tendenza attuale a spingere di più l'elaborazione e la logica nel client sta diventando comune.
È accettabile fare una discreta quantità di elaborazione dei dati lato client (basta guardare alcuni dei framework javascript attualmente in voga), ma è davvero un front-end? L'utente non lo vede, ne vede i risultati e con criteri tradizionali che generalmente vengono considerati come "back-end"; ma questo si sta verificando nel browser ora ..
Allo stesso modo, e incredibilmente rilevante per questa domanda, il markup in PHP è davvero un compito di front-end? Ne dubito, una rapida panoramica delle schede di lavoro mostra che poche posizioni di sviluppatori front-end si aspettano esperienza o conoscenza del PHP; tuttavia l'intuizione suggerirebbe che il mark-up per l'interfaccia sia intrinsecamente front-end.
Il fatto stesso che questa domanda esista è un esempio di come " front-end " e " back-end " sono intrinsecamente ambigui e continueranno a essere così.
Facendo riferimento alle attività come "lato server" o "lato client" che l'ambiguità viene persa, si sa dove si sta eseguendo il codice e quali lingue verranno utilizzate. Se hai detto " front-end " nell'esempio che l'OP ha fornito, dubito che molte persone farebbero " Oh, quindi PHP sul server giusto? ".