Come costruire un backend per PHP?
In questo tutorial, imparerai come costruire un backend per PHP utilizzando Back4App per alimentare un'applicazione web dinamica sul lato server.
Ci concentreremo sull'integrazione dei principali servizi di Back4App, come la gestione del database, le Funzioni Cloud Code, le API REST e GraphQL, l'autenticazione degli utenti e le query in tempo reale.
Seguendo questi passaggi, creerai un backend sicuro, scalabile e robusto che puoi utilizzare nei tuoi progetti PHP.
Esamineremo anche perché Back4App accelera lo sviluppo del backend rispetto alla costruzione di tutto da zero, così potrai risparmiare tempo e fatica.
Scoprirai come implementare una sicurezza avanzata, pianificare attività con Cloud Jobs e connettere integrazioni esterne con webhook, il tutto facendo affidamento sull'infrastruttura di Back4App.
Alla fine, sarai pronto a far crescere questo backend di base sul lato server in un setup di produzione completo, o integrare API di terze parti e logica personalizzata per un uso reale.
Per completare questo tutorial, avrai bisogno di:
- Un account Back4app e un nuovo progetto Back4App Iniziare con Back4app. Se non hai un account, creane uno gratuitamente e segui la guida per preparare il tuo nuovo progetto.
- Ambiente di sviluppo PHP di base Puoi configurarlo localmente con PHP installato o utilizzare un ambiente di hosting che supporta PHP. Documentazione ufficiale di PHP.
- Supporto cURL o un modo per inviare richieste HTTP La maggior parte delle installazioni PHP include cURL per impostazione predefinita. Installazione di cURL (Documenti ufficiali).
- Familiarità con i fondamenti delle applicazioni web Comprendere HTTP, scripting lato server e concetti di base sui database sarà utile.
Assicurati di avere questi prerequisiti in atto prima di immergerti nei passaggi seguenti. Avere il tuo progetto Back4App configurato e un ambiente PHP pronto renderà più facile seguire.
Il primo passo per costruire il tuo backend lato server su Back4App è creare un nuovo progetto. Se non lo hai già fatto, segui questi passaggi:
- Accedi al tuo account Back4App.
- Clicca sul pulsante “Nuova App” nel tuo dashboard di Back4App.
- Dai un nome alla tua app (ad esempio, “PHP-Backend-Tutorial”).
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/drXO0UqsgxhFvRDiVmsMb_image.png?format=webp)
Una volta creato, il tuo nuovo progetto Back4App appare nel dashboard. Questo progetto sarà la base per i prossimi passaggi di configurazione.
Poiché stiamo lavorando con PHP senza un SDK specifico per Parse, ci affideremo alle API REST e GraphQL di Back4App per la comunicazione. Avrai bisogno delle seguenti credenziali dal tuo dashboard di Back4App:
- ID dell'applicazione
- Chiave API REST
- URL del server Parse (di solito https://parseapi.back4app.com)
Puoi trovare questi navigando nella sezione Impostazioni dell'app o Sicurezza e chiavi.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/F9teHXd_M8ERn1OPGirbi_image.png?format=webp)
In PHP, puoi eseguire richieste HTTP utilizzando cURL o altre librerie. Di seguito è riportato un breve esempio di invio di una richiesta POST a Back4App:
Questo frammento dimostra come collegare la tua applicazione PHP al tuo backend di Back4App. Modifica il YOUR_APPLICATION_ID, YOUR_REST_API_KEY, e altri parametri per corrispondere alle tue chiavi. In questo modo, il tuo codice lato server può leggere e scrivere dati nel tuo nuovo progetto.
Con il tuo progetto Back4App pronto, è tempo di strutturare il tuo database. Un modello dati definisce come i dati della tua applicazione web sono organizzati. Ad esempio, potresti memorizzare attività o post del blog in classi.
- Vai alla sezione “Database” nel tuo dashboard di Back4App.
- Crea una nuova classe (ad esempio, “Todo”) con campi come title (String) e isCompleted (Boolean).
![Crea Nuova Classe Crea Nuova Classe](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/iaZ_P-7epc_LSMFIPlaZV_image.png?format=webp)
Back4App ti consente di creare colonne per vari tipi di dati, inclusi String, Number, Boolean, Pointer, Relation, File, e altri. Puoi anche far sì che lo schema venga creato automaticamente quando salvi per la prima volta un oggetto dal tuo script PHP.
![Crea Colonna Crea Colonna](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/DEh9vyxdBTZcslXxkVQMA_image.png?format=webp)
L'agente AI di Back4App può automatizzare la creazione del modello di dati:
- Apri l'agente AI dalla Dashboard.
- Fornisci una descrizione come “Per favore crea una nuova app ToDo su Back4App con uno schema di classe completo.”
- Lascia che l'agente AI crei lo schema del database per te.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/0snNZwHWzxuXlNu30n7IA_image.png?format=webp)
Questa funzione può farti risparmiare tempo e mantenere la tua app lato server coerente.
Per salvare un nuovo oggetto nella tua Todo classe utilizzando REST, puoi inviare una richiesta POST:
In PHP, faresti qualcosa di simile con cURL. Ad esempio:
Per interrogare tutti gli Todo elementi:
Back4App supporta anche GraphQL. Puoi inserire o recuperare dati inviando query o mutazioni GraphQL a:
Inserisci (Mutazione):
Query:
Se hai bisogno di aggiornamenti in tempo reale nella tua applicazione web, considera Live Queries. Abilita le Live Queries nel tuo dashboard di Back4App, quindi utilizza un approccio WebSocket dal tuo ambiente PHP (o un client separato) per iscriverti alle modifiche. Sebbene sia più comune nei client JavaScript, puoi configurare socket separati in PHP se necessario. Per dettagli, vedere il Documentazione delle Live Queries di Back4App.
Le ACL (Liste di Controllo degli Accessi) e CLP (Permessi a Livello di Classe) proteggono i tuoi dati controllando chi può leggere o scrivere oggetti. Questo protegge il tuo backend da accessi non autorizzati.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/PdAyrw1nqA1QQJFuCc-4t_image.png?format=webp)
- Imposta i Permessi a Livello di Classe (CLP) nel dashboard del Database. Puoi limitare la lettura/scrittura pubblica o richiedere autenticazione.
- Configura le ACL su ogni oggetto se hai bisogno di un controllo più dettagliato. Un'ACL può specificare l'accesso in lettura/scrittura per un utente o un ruolo specifico.
Per ulteriori dettagli, vedere Linee Guida sulla Sicurezza dell'App.
Il Cloud Code ti consente di eseguire JavaScript lato server per compiti come logica aziendale, trigger o validazioni, senza dover configurare il tuo server. In questo modo, puoi mantenere nascosto un certo codice, eseguire trasformazioni dei dati e altro.
Una semplice funzione di Cloud Code che calcola la lunghezza del testo:
Questa funzione può essere invocata dal tuo script PHP utilizzando REST:
Puoi distribuire il Cloud Code tramite il Back4App CLI o il Back4App Dashboard.
Se hai bisogno di librerie extra, installale con npm e importale nel tuo Cloud Code. Questo è utile per integrazioni avanzate lato server.
Per impostazione predefinita, il tuo progetto Back4App ha l'autenticazione degli utenti tramite la Parse.User classe. Puoi controllare se gli utenti devono verificare la loro email o solo accedere tramite nome utente/password.
Crea un utente:
Accedi a un utente esistente:
I log-in social (Google, Apple, Facebook) sono possibili configurando i flussi OAuth. Per istruzioni, fare riferimento alla Documentazione sul login sociale.
Puoi caricare file tramite REST:
La risposta JSON contiene un URL del file. Puoi memorizzare questo URL nelle tue classi per fare riferimento al file caricato.
Puoi consentire il caricamento di file solo da utenti autenticati o da determinati ruoli. Configura le regole di caricamento dei file nelle impostazioni del server.
La verifica dell'email garantisce che vengano utilizzate solo indirizzi email validi. Le reimpostazioni della password consentono agli utenti di recuperare i propri account in modo sicuro.
- Nel Dashboard di Back4App, vai a Impostazioni App > Email.
- Abilita la verifica email e imposta i tuoi modelli desiderati.
- Abilita la reimpostazione della password in modo che gli utenti possano recuperare gli account.
Una volta abilitato, le registrazioni degli utenti attivano un'email di verifica. Puoi anche richiedere il ripristino della password utilizzando:
I Cloud Jobs ti permettono di automatizzare compiti come rimuovere dati obsoleti o inviare email regolari. Puoi scriverli nel tuo main.js e programmarli nel dashboard di Back4App.
- Distribuisci questo codice su Back4App.
- Pianifica il lavoro nel Dashboard sotto Impostazioni App > Impostazioni Server > Lavori in Background.
![Pianificazione di un lavoro nel cloud Pianificazione di un lavoro nel cloud](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/5wG60YnWIST74erryTb-u_image.png?format=webp)
I Webhook ti permettono di inviare richieste HTTP ad altri servizi quando si verificano eventi, come la creazione di un nuovo record nelle tue classi Back4App. Questo è utile per integrazioni esterne, comprese piattaforme di pagamento, strumenti di email marketing o notifiche Slack.
- Apri il pannello dei Webhook nel tuo dashboard di Back4App > Altro > WebHooks.
- Aggiungi un nuovo Webhook con l'URL dell'endpoint dove desideri inviare i dati degli eventi.
- Scegli i trigger (ad esempio, creazione, aggiornamento o eliminazione di un oggetto).
![Aggiunta di un Webhook Aggiunta di un Webhook](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/morUMdwsAbVQ1EmBfUfAA_image.png?format=webp)
Puoi anche definire webhook nei trigger del Cloud Code, effettuando richieste HTTP con moduli Node.js come axios.
![WebHook Prima del Salvataggio WebHook Prima del Salvataggio](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/fXvy4eRzabyWmN80OMyqW_image.png?format=webp)
L' App di Amministrazione di Back4App è un'interfaccia centrata sul modello che consente agli utenti non tecnici o agli amministratori di gestire i dati senza scrivere codice. Offre un'esperienza di gestione dei dati più intuitiva rispetto al Dashboard standard di Parse.
- Abilita l'App di Amministrazione andando su App Dashboard > Altro > App di Amministrazione.
- Clicca su “Abilita App di Amministrazione” e configura le tue credenziali di amministratore.
- Scegli un sottodominio per accedere all'App di Amministrazione.
![Abilita App di Amministrazione Abilita App di Amministrazione](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/5BTk1ntDh9JLXurObmm_o_image.png?format=webp)
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/u-pU1yBJJxa9KEM2psjXS_image.png?format=webp)
Accedi con le tue nuove credenziali di amministratore per iniziare a gestire i record del database, gli account utente, i ruoli e altro ancora.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/jOFU8C0qiFm6wiVZXS9l0_image.png?format=webp)
In questo tutorial, hai imparato come costruire un backend server-side per la tua PHP applicazione web utilizzando Back4App. Hai impostato un database sicuro, sfruttato funzionalità in tempo reale, definito logica personalizzata nel Cloud Code e esplorato l'autenticazione degli utenti, l'archiviazione dei file e i lavori programmati. Hai anche visto come i webhook e il Pannello di Amministrazione possono integrarsi con servizi esterni e semplificare la gestione dei dati.
Con questa base in atto, hai un backend flessibile e scalabile che puoi estendere secondo necessità per il tuo prossimo progetto PHP. Continua a esplorare tecniche avanzate, ruoli personalizzati o API di terze parti per rendere la tua applicazione ancora più potente e dinamica.
- Affina la tua applicazione PHP pronta per la produzione aggiungendo caching, bilanciamento del carico o sicurezza avanzata.
- Aggiungi controllo degli accessi basato sui ruoli o flussi di autenticazione unici, se la tua base utenti lo richiede.
- Consulta la documentazione ufficiale di Back4App per saperne di più sull'ottimizzazione delle prestazioni, i log e l'analisi.
- Prova tutorial aggiuntivi e utilizza le tecniche apprese qui per costruire soluzioni nel mondo reale, dall'e-commerce alle piattaforme social.
![Doc contributor](https://s3.amazonaws.com/archbee-animals/cat.png)