Novità di Laravel 10: un tuffo negli ultimi aggiornamenti e funzionalità

Pubblicato: 2023-01-25

Dopo oltre un decennio dall'introduzione del famosissimo framework Laravel, ti sei mai chiesto: "Cos'altro può offrire Laravel agli sviluppatori PHP?"

Dato quanto ha già semplificato lo sviluppo di PHP sia per gli sviluppatori principianti che per quelli professionisti, alcuni potrebbero persino obiettare che ha viziato gli sviluppatori facendogli credere che PHP sia il linguaggio di programmazione più semplice in circolazione.

Quindi, Laravel ha ancora altre sorprese in serbo per gli sviluppatori di Laravel? O ha esaurito tutti i mezzi possibili per supportare gli sviluppatori PHP?

Bene, almeno sappiamo che Laravel 10 ha molto da offrire. Questo è ciò che scopriremo in questo articolo mentre ti accompagniamo in un viaggio attraverso le nuove funzionalità, le correzioni e i metodi e i pacchetti recentemente deprecati di Laravel 10.

Programma di rilascio di Laravel

Il core team di Laravel rilasciava due versioni principali all'anno, una ogni sei mesi.

Tuttavia, il ciclo di rilascio è stato modificato quando Taylor Otwell, il creatore di Laravel, ha annunciato che ogni anno sarebbe stata rilasciata un'unica versione principale. Ciò ha consentito al core team e alla community di dedicare più tempo e impegno a una versione specifica del framework e di introdurre nuove potenti funzionalità senza apportare modifiche sostanziali.

Con Laravel 9 rilasciato l'8 febbraio 2022, il programma di rilascio previsto è il seguente:

  • Laravel 10 : 7 febbraio 2023
  • Laravel 11 : 6 febbraio 2024

Inoltre, secondo la politica di supporto, vengono offerte correzioni di bug per 18 mesi e aggiornamenti di sicurezza per due anni per tutte le versioni di Laravel.

Di seguito sono riportate le correzioni di bug previste e il programma degli aggiornamenti di sicurezza:

  • Laravel 9 continuerà a ricevere correzioni di bug fino all'8 agosto 2023 e correzioni di sicurezza fino al 6 febbraio 2024.
  • Laravel 10 riceverà correzioni di bug fino al 6 agosto 2024 e correzioni di sicurezza fino al 4 febbraio 2025.
  • Laravel 11 dovrebbe ricevere correzioni di bug fino al 4 agosto 2025 e correzioni di sicurezza fino al 2 febbraio 2026.

Dovresti aggiornare a Laravel 10?

È importante ricordare che non è sempre necessario aggiornare la versione Laravel della nostra applicazione all'ultima versione non appena viene rilasciata una nuova versione.

Laravel è un framework open source, il che implica che ogni volta che installiamo una nuova istanza di Laravel sulla nostra macchina, possediamo la base di codice del framework. Ciò significa che anche se la versione del framework utilizzata dalla nostra app non è più supportata, l'app funzionerà comunque; dovremo solo mantenerlo noi stessi.

Di conseguenza, è ampiamente suggerito che la stabilità dell'applicazione abbia la priorità rispetto agli aggiornamenti del framework.

In breve, dovresti prendere in considerazione l'aggiornamento a Laravel 10 quando:

  • L'applicazione è stabile con la sua versione attuale e funziona senza problemi.
  • La nuova versione aggiunge una funzionalità richiesta dall'applicazione o risolve un problema riscontrato dall'applicazione.
  • L'applicazione sarà ben testata prima che le modifiche all'aggiornamento vengano trasferite in produzione.

Laravel 10 aggiornamenti caldi

Logo di Laravel 10
Un'immagine del logo Laravel 10.

Come già sapete, Laravel 10 non è ancora stato rilasciato. Tuttavia, manterremo questo articolo aggiornato con tutte le nuove informazioni sulla versione anticipata. Pertanto, ti consigliamo di aggiungere questa pagina ai segnalibri e di visitarla di tanto in tanto.

Nuove funzionalità e aggiornamenti in Laravel 10

Non c'è dubbio che la parte più eccitante di ogni nuova versione è l'aggiunta di nuove funzionalità. Quindi, senza ulteriori indugi, iniziamo dando un'occhiata alle nuove funzionalità e agli aggiornamenti di Laravel 10.

1. PHP 8.1: Nel cuore di Laravel 10

PHP 8.1 è la versione PHP minima richiesta in Laravel 10. Sulla base del confronto tra il ramo Laravel 9 e il ramo principale del framework su GitHub, alcune funzionalità di PHP 8.1, come le proprietà array_is_list readonly dovrebbero essere introdotte in Laravel 10 .

2. Supporto per PHP 8.2

PHP 8.2 è stato rilasciato l'8 dicembre 2022, solo due mesi prima della data di rilascio di Laravel 10. Tuttavia, questo non dovrebbe impedirti di utilizzare le funzionalità di PHP 8.2, poiché senza fare nulla in più, Laravel 10 sarà pronto per PHP 8.2.

In effetti, l'intero ecosistema Laravel, inclusi Forge, Vapor ed Envoyer, supporta PHP 8.2 e puoi persino utilizzare PHP 8.2 con Laravel 9. Quanto è bello ?!

3. Aggiornamento dei kit di avvio Laravel

Laravel Breeze e Jetstream sono pronti per utilizzare Laravel 10 una volta rilasciato. Inoltre, sono già stati aggiornati anche a Inertiajs 1 con una sorpresa per JetStream per avere il supporto completo della modalità oscura.

4. Aggiornamento della versione Predis

Predis è un robusto client Redis per PHP che può aiutarti a ottenere il massimo dalla memorizzazione nella cache per fornire un'esperienza utente fantastica. Laravel precedentemente supportava entrambe le versioni 1 e 2, ma a partire da Laravel 10, il framework non supporta più Predis 1.

Sebbene la documentazione di Laravel menzioni Predis come pacchetto per interagire con Redis, puoi anche utilizzare l'estensione PHP ufficiale. Questa estensione fornisce un'API per la comunicazione con i server Redis.

5. Dichiarazioni di tipo nativo

Laravel utilizzava DocBlocks nel suo codice scheletro per chiarire cosa fa un pezzo di codice e quali tipi di parametri o risposte aspettarsi. Tuttavia, grazie alle dichiarazioni di tipo nativo in Laravel 10, questo cambierà.

Il modo migliore per spiegare questo cambiamento è con un semplice esempio. Invece di una funzione simile a questa:

 /** * Determine whether the user can create models. * * @param \{{ namespacedUserModel }} $user * @return \Illuminate\Auth\Access\Response|bool */ public function create({{ user }} $user) { // }

…sarà invece così:

 /** * Determine whether the user can create models. */ public function create({{ user }} $user): bool { // }

Questa modifica è puramente a vantaggio dell'esperienza dello sviluppatore, poiché gli IDE conosceranno la forma del parametro e della risposta previsti. Fornirà una migliore chiarezza del tipo quando non è possibile tramite i tipi nativi PHP. Quindi, aiuterà gli editor di codice a funzionare meglio con le funzionalità di completamento automatico.

6. Tutte le regole di convalida richiamabili per impostazione predefinita

Se dovessi creare una regola di convalida invocabile in Laravel 9, dovresti aggiungere il flag --invokable dopo il comando artigiano. Questo non è più necessario perché tutte le regole di Laravel 10 sono richiamabili per impostazione predefinita. Quindi, puoi eseguire il seguente comando per creare una nuova regola invocabile in Laravel 10:

 php artisan make:rule CustomRule

7. Supporto nativo per la modifica delle colonne

Nel tentativo di eliminare la necessità del pacchetto doctrine/dbal quando si utilizza change() per modificare le colonne, una nuova funzionalità è in arrivo su Laravel 10. Questa funzionalità consentirà agli sviluppatori di utilizzare il metodo change() e modificare le colonne su MySQL, PostgreSQL e SQL Server senza la necessità di pacchetti aggiuntivi. Si tratta di un cambiamento radicale significativo e rischioso, ma riteniamo che ne valga la pena poiché eliminerà la necessità di un pacchetto aggiuntivo.

Per comprendere meglio la nuova funzionalità, vedere l'esempio seguente:

 $table->integer('user_balance')->unsigned()->default(0)->comment('balance'); // `user_balance` is an integer, unsigned, defaults to '0', and column comment is 'balance'

Ora, supponiamo di avere una colonna per user_balance e vogliamo cambiarne il tipo. Partendo da Laravel 10 possiamo semplicemente fare così:

 $table->bigInteger('user_balance')->change(); // This will change `user_balance` to bigInteger instead of just integer

Il codice precedente cambierà correttamente il tipo di colonna, ma eliminerà anche gli attributi UNSIGNED , DEFAULT e COMMENT . Pertanto, è importante ricordare di aggiungere tutti gli attributi quando si modifica il tipo di una colonna:

 $table->bigInteger('user_balance')->unsigned()->default(0)->comment('balance')->change();

Nel caso in cui si disponga di più connessioni al database e sia già installato doctrine/dbal , si consiglia di chiamare il metodo Schema::useNativeSchemaOperationsIfPossible() all'interno del metodo di boot in App\Providers\AppServiceProvider per poter utilizzare le operazioni dello schema nativo e utilizzare operazioni native prima di fare affidamento sul pacchetto (SQLite, ad esempio, non lo supporta ancora):

 use IlluminateSupportFacadesSchema; class AppServiceProvider extends ServiceProvider { public function boot() { Schema::useNativeSchemaOperationsIfPossible(); } }

8. Recupero nativo del tipo di colonna

Un'altra caratteristica degna di nota di Laravel 10 è la possibilità di utilizzare il metodo Schema::getColumnType senza dover fare affidamento sul pacchetto doctrine/dbal . Attualmente utilizziamo Schema::getColumnType con doctrine/dbal per ottenere il tipo di colonna. doctrine/dbal associa ogni tipo di colonna nativo al suo equivalente di tipo doctrine/dbal e non supporta molti dei tipi di colonna utilizzati da Laravel in vari database.

In Laravel 10, invece, il nuovo metodo Schema::getColumnType restituirà il tipo di colonna effettivo anziché il suo equivalente doctrine/dbal . Consente inoltre di scrivere test di integrazione per la nuova funzionalità di modifica della colonna nativa. È possibile utilizzare questa funzionalità per ottenere il nome del tipo di dati o l'intera definizione del tipo della colonna specificata:

 Schema::getColumnType('products', 'price'); // decimal

9. Algoritmo di hashing più veloce

xxHash è un algoritmo Hash incredibilmente veloce. Presenta una grande casualità e dispersione dell'output, oltre all'unicità per ridurre le collisioni. Poiché PHP 8.1 fornisce supporto per xxh128 e Laravel 10 funziona su PHP 8.1, avere un algoritmo hash così affidabile all'interno di Laravel 10 è l'ideale.

Vale la pena ricordare che Taylor ha evidenziato durante la sua revisione di questa modifica che alcuni pacchetti di terze parti potrebbero fare affidamento sul fatto che i nomi dei file siano nel formato esatto dell'hash SHA-1, che è l'algoritmo utilizzato da Laravel per l'hashing. Pertanto, se stai pianificando un aggiornamento a Laravel 10, sarebbe saggio ricontrollarlo in tutti i pacchetti di terze parti che stai utilizzando nella tua app.

10. Supporto del metodo whereExists() per Eloquent Builder

Attualmente, l'utilizzo whereExists() richiede la configurazione della query nidificata utilizzando una chiusura. Fortunatamente, con Laravel 10, ora è possibile includere un Eloquent Builder come query nidificata. Consente l'utilizzo di metodi builder personalizzati, ambiti del modello e così via.

Ad esempio, normalmente lo facciamo se vogliamo usare whereExists() :

 Order::whereExists(function ($query) { $query->from('products')->whereColumn('products.order_id', 'orders.id'); });

Con Laravel 10, invece, possiamo fare proprio questo:

 Order::whereExists( Product::whereColumn('products.order_id', 'orders.id') );

11. Ottimizzazione del caricamento desideroso

Una delle nuove interessanti funzionalità di Laravel 10 è l'ottimizzazione del caricamento quando non ci sono chiavi da caricare. Questa modifica è più una correzione che una funzionalità poiché affronta un problema attuale in cui le relazioni di caricamento entusiasti causano l'esecuzione di un gran numero di query impossibili.

Attualmente, quando desideroso di caricare relazioni che non hanno chiavi da caricare, Laravel eseguirà comunque una query simile a questa select \* from `table_name` where 0 = 1 . Tuttavia, il nuovo aggiornamento di Laravel 10 controlla innanzitutto se sono disponibili chiavi e, in caso contrario, fornisce una raccolta vuota, eliminando la necessità di query di database non necessarie.

Metodi e pacchetti deprecati in Laravel 10

Laravel 10 dice addio a PHP 8.0

Il framework Laravel abbandonerà il supporto per PHP 8.0 in Laravel 10. Quindi, se hai intenzione di aggiornare la tua app a Laravel 10, devi prima aggiornare la versione PHP a PHP 8.1 o PHP 8.2.

Rimozione metodi obsoleti

Possiamo vedere che il core team di Laravel sta rimuovendo i metodi deprecati in Laravel 9 dal ramo Laravel 10. Prevediamo che il team aggiornerà la guida all'aggiornamento della documentazione per includere tutti i metodi e i pacchetti deprecati non appena verrà rilasciato Laravel 10.

Se hai intenzione di migrare un progetto corrente a Laravel 10, qualsiasi codice che utilizza un metodo deprecato dovrebbe essere riscritto con un nuovo approccio per ottenere lo stesso risultato.

Ecco un elenco di tutte le deprecazioni e le eliminazioni che abbiamo riscontrato confrontando Laravel 9 con il ramo principale:

  • Il metodo Route::home (deprecato in Laravel 9)
  • Le funzioni e i metodi deprecati attorno a dispatchNow . Questo per incoraggiare gli sviluppatori a utilizzare dispatchSync che è l'unico modo supportato per inviare immediatamente.
  • Il getBaseQuery perché ha un toBase equivalente
  • La classe MaintenanceModeException che non era più utilizzata
  • Il tratto MocksApplicationServices
  • Il metodo Mail::failures della posta falsa
  • La proprietà $dates deprecata, si consiglia invece di utilizzare $casts
  • Il metodo assertTimesSent()
  • Eliminato il supporto per Predis 1 e doctrine/dbal 2
  • Tutte le deprecazioni correlate in doctrine/dbal da quando Laravel ha abbandonato il supporto per la versione 2

Come installare Laravel 10

Laravel 10 è già disponibile ora per farti fare un giro e testare le sue funzionalità. Il flag –dev nel programma di installazione di Laravel installa il ramo master dal repository laravel/laravel . Tutto quello che dovrai fare è eseguire questo comando nel tuo terminale:

 laravel new example-kinsta-app --dev

Oppure, se preferisci usare Composer:

 composer create-project --prefer-dist laravel/laravel example-kinsta-app dev-master

Per comprendere meglio il comando Composer, ecco una breve spiegazione:

  • laravel/laravel : il pacchetto per l'installazione di Laravel
  • example-kinsta-app : la nuova directory per il tuo nuovo progetto (può essere modificata)
  • dev-master : La prossima versione di Laravel (in questo caso, Laravel 10)

Dopo aver installato Laravel 10, puoi confermare la versione navigando nella nuova directory example-kinsta-app ed eseguire il comando artigiano:

 $ php artisan --version Laravel Framework 10.x-dev

Come aggiornare un progetto a Laravel 10

Sei tentato di passare a Laravel 10? Il core team di Laravel lavora duramente sulla documentazione per fornire una guida all'aggiornamento semplice e senza soluzione di continuità, coprendo al contempo ogni possibile modifica di rilievo. Sentiti libero di controllare la guida all'aggiornamento di Laravel 10, poiché alcune informazioni sul processo di aggiornamento sono ora disponibili.

Dovresti anche tenere d'occhio Laravel Shift una volta rilasciato Laravel 10. Offre un approccio semplice e automatizzato per aggiornare la tua versione di Laravel.

Oltre alla documentazione di Laravel e a Laravel Shift, noi di Kinsta pubblicheremo una guida completa all'aggiornamento con esempi reali. Quindi, non dimenticare di aggiungere questa pagina ai segnalibri e di tornarci una volta rilasciato Laravel 10.

Come distribuire i progetti Laravel 10

La distribuzione di Laravel 10 non dovrebbe essere così diversa dalla distribuzione del progetto Laravel 9. Ecco quali potrebbero essere i requisiti del server:

  • PHP >= 8.1
  • Estensione BCMath PHP
  • Estensione Ctype PHP
  • Curl Estensione PHP
  • Estensione DOM PHP
  • Fileinfo Estensione PHP
  • Estensione PHP JSON
  • Estensione Mbstring PHP
  • Estensione OpenSSL PHP
  • Estensione PCRE PHP
  • Estensione DOP PHP
  • Tokenizer estensione PHP
  • Estensione PHP XML

Potete distribuire e ospitare il vostro progetto Laravel 10 su Kinsta in pochi minuti, poiché Laravel fa parte di un lungo elenco di framework supportati per le app ospitate.

Implementazione di Laravel 10 su Kinsta: guida passo dopo passo

Ci sono diversi vantaggi nell'ospitare e distribuire le vostre applicazioni su Kinsta, incluso il non doversi preoccupare della configurazione della distribuzione.

Kinsta fornisce uno strumento intuitivo ma potente per la distribuzione di applicazioni, la connessione ai database e il monitoraggio delle prestazioni dal vivo. Questo strumento è noto come MyKinsta e in questa sezione vi guideremo attraverso i passaggi per distribuire un'applicazione Laravel 10 che lo utilizza.

1. Applicazione Laravel 10

Home page dell'applicazione Laravel 10
La homepage di un'applicazione Laravel 10 distribuita su Kinsta.

Supponendo che tu abbia un'applicazione Laravel 10 localmente, dobbiamo assicurarci che abbia un repository github disponibile. Utilizzeremo questo repository per distribuire l'applicazione in un secondo momento.

Puoi includere un file .htaccess nella directory principale della tua applicazione che contenga quanto segue:

 <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)$ public/$1 [L] </IfModule>

Per Laravel, questo reindirizza tutte le richieste a public/index.php. Tuttavia, se necessario, è possibile aggiornare questo comando durante l'aggiunta dell'applicazione (passaggio Configurare i processi ) o dopo la distribuzione nella pagina Processi dell'applicazione. Puoi usare:

  • heroku-php-apache2 /public
  • php artisan serve --host 0.0.0.0 --port 8080

2.Accedi a MyKinsta

Pagina di accesso a MyKinsta
Screenshot per la pagina di login di MyKinsta.

Andate alla pagina di login di MyKinsta e inserite il vostro indirizzo e-mail e la password. Se non disponi ancora di un account, puoi registrarne uno nuovo e ottenere uno sconto di $ 20 sul primo mese di qualsiasi abbonamento a un piano tariffario.

3. Autorizzare Kinsta su GitHub

Una volta effettuato l'accesso, noterai che la dashboard ha 3 opzioni per creare un sito WordPress, creare un'applicazione o creare un database. Faremo clic sul pulsante Connetti GitHub per l'integrazione con GitHub.

Pannello di controllo di MyKinsta
Uno screenshot per il cruscotto di MyKinsta.

Successivamente, fai clic sul pulsante Continua con GitHub . Se non avete già effettuato l'accesso a GitHub, vi verrà mostrata l'opzione per accedere. Quindi potete autorizzare l'applicazione Kinsta GitHub ad accedere al vostro account GitHub selezionando Autorizza Kinsta .

Infine, GitHub reindirizzerà il vostro browser a MyKinsta per continuare a configurare l'applicazione.

Connettere MyKinsta con GitHub
Screenshot per la connessione di MyKinsta con GitHub.

Dopo esserti connesso a GitHub, ti verrà mostrato il popup/modale Aggiungi applicazione , che ha un menu a discesa per selezionare un repository GitHub. Fare clic sul campo repository GitHub e selezionare Modifica autorizzazioni GitHub nel menu a discesa.

Aggiunta di un'applicazione a MyKinsta
Screenshot per aggiungere un'applicazione a MyKinsta.

Questo aprirà una nuova scheda nel vostro browser alla pagina web di GitHub dove potrete scegliere a quali dati Kinsta sarà in grado di accedere. Invece di abilitare l'accesso a tutti i repository, considerate di scegliere solo quello che volete che Kinsta utilizzi. Fare clic su Seleziona solo repository e scegliere il repository che si desidera distribuire.

Installazione di MyKinsta su GitHub
Uno screenshot per l'installazione di MyKinsta su GitHub.

Quindi, fai clic su Installa e il gioco è fatto!

Quando tornate su MyKinsta e cliccate sul campo repository GitHub , il repository autorizzato dovrebbe essere visibile. Inoltre, potete selezionare la casella di controllo Distribuzione automatica al commit per abilitare la funzione di MyKinsta per distribuire automaticamente la vostra applicazione non appena apportate modifiche al repository GitHub.

Selezione del ramo del repository per MyKinsta
Screenshot per Selezionare il ramo del repository per MyKinsta.

4. Aggiungi i dettagli di base dell'applicazione

Ora puoi assegnare all'applicazione un nome che verrà utilizzato solo nella dashboard e selezionare tra 25 posizioni del data center, consentendoti di posizionare la tua applicazione nella posizione geografica più vicina ai tuoi utenti. Se hai bisogno di assistenza per determinare quale data center è ideale per la tua applicazione, consulta la nostra guida per scegliere la giusta posizione del data center.

Aggiunta dei dettagli di base dell'applicazione
Screenshot per l'aggiunta dei dettagli di base dell'applicazione.

5. Aggiungere le variabili d'ambiente

La sezione seguente riguarda l'aggiunta di variabili di ambiente e la variabile più importante è APP_KEY .

Se non hai già una chiave nel tuo file .env , puoi generarne una utilizzando un generatore di chiavi Laravel online. Quindi, inserisci APP_KEY nel campo Chiave 1 e inserisci la chiave dell'app generata nel campo Valore 1 .

Infine, seleziona Disponibile durante il runtime e Disponibile durante il processo di compilazione .

Aggiunta di variabili env all'applicazione MyKinsta
Screenshot per l'aggiunta di variabili env all'applicazione MyKinsta.

5. Configurare l'ambiente di creazione

La cosa magica qui è che non devi configurare nulla! Puoi procedere facendo clic sul pulsante Continua e voilà! Hai completato la configurazione dell'ambiente costruito. Tuttavia, se si desidera migliorare le risorse di costruzione per garantire una costruzione più rapida, è possibile scegliere la scelta preferita dal campo Risorse di costruzione .

Il campo Build path è facoltativo: potete lasciarlo vuoto e MyKinsta utilizzerà la cartella principale.

Ambiente di creazione dell'applicazione MyKinsta
Configurazione dell'ambiente di compilazione dell'applicazione.

6. Impostare i processi e il metodo di pagamento

Per la sezione Risorse , compila ogni campo con le seguenti informazioni:

  • Nome processo: il nome visualizzato nell'elenco dei processi dell'applicazione.
  • Tipo di processo: scegli attentamente, perché non può essere modificato una volta impostato. Puoi, tuttavia, aggiungere e modificare ulteriori processi, come un processo in background, nella pagina Processi dell'applicazione dopo la distribuzione.
  • Comando di avvio: il comando "Avvia" per il processo (non richiesto).
  • Dimensione del pod: la capacità del pod che ti aspetti di aver bisogno per il tuo processo.
  • Conteggio istanze: il numero di istanze per il tuo processo (massimo 50).

Notate che potete semplicemente fare clic su Continua senza riempire il campo Avvia comando , poiché Kinsta rileva automaticamente il comando richiesto durante la prima distribuzione.

Processo di configurazione dell'applicazione MyKinsta
Screenshot per la configurazione del processo dell'applicazione.

Per l'ultimo passaggio, esamina i costi di utilizzo mensili calcolati per la tua app, quindi conferma il metodo di pagamento. Al termine, fai clic sul pulsante Conferma metodo di pagamento .

Conferma dei dettagli di pagamento per MyKinsta
Screenshot per la conferma dei dettagli di pagamento.

E hai finito! Kinsta farà tutto il lavoro in background per servire la tua applicazione.

Caricamento del processo di distribuzione dell'applicazione
Screenshot per il caricamento del processo di distribuzione dell'applicazione.

Avrai quindi accesso a tutti i dettagli del processo di distribuzione, nonché all'URL temporaneo dell'app live, che potrai successivamente sostituire con il tuo dominio.

Distribuzione riuscita per l'applicazione
Distribuzione riuscita dell'applicazione Laravel10 su MyKinsta.

La vostra applicazione Laravel 10 è ora disponibile su Kinsta, ma cosa succede se avete bisogno di apportare modifiche alla produzione? Cosa succede se vogliamo modificare l'attributo href di un tag di ancoraggio? Poiché abbiamo attivato la funzione Distribuzione automatica al commit, MyKinsta rileverà qualsiasi modifica apportata al ramo distribuito e aggiornerà automaticamente l'app live di conseguenza.

7. Connetti Laravel 10 con il database MySQL

Ora che abbiamo implementato la nostra applicazione Laravel 10, possiamo facilmente creare un database e collegarlo alla nostra applicazione. Tutto quello che devi fare è fare clic su Applicazioni dal menu di navigazione a sinistra, quindi su Aggiungi servizio e selezionare Database .

Aggiunta di un nuovo database a MyKinsta
Screenshot per l'aggiunta di un nuovo database a MyKinsta.

Dopo aver compilato tutti i campi, fai clic su Crea database . Questo stabilirà un nuovo database pronto per le connessioni interne ed esterne. Nel nostro scenario, richiediamo una connessione interna al progetto Laravel 10 che abbiamo implementato.

Per ottenerlo, tutto ciò che devi fare è cliccare su Aggiungi applicazione nella sezione Connessioni interne e selezionare la tua applicazione. Potete spuntare la casella Aggiungi variabili d'ambiente all'applicazione e MyKinsta inserirà tutte le variabili .env di cui ha bisogno la vostra applicazione.

Collegamento del database all'app Laravel 10
Schermata per la connessione del database all'applicazione Laravel 10.

Con solo questo, la tua applicazione Laravel 10 viene distribuita e connessa a un database.

Come contribuire a Laravel 10

Sebbene Laravel sia gestito da un core team, è attivamente sviluppato da oltre 3.000 collaboratori volontari.

Vuoi essere uno di quei contributori e contribuire a plasmare il futuro di Laravel? Se hai risposto di sì, potresti aiutare gli sviluppatori di tutto il mondo aggiungendo una nuova funzionalità, correggendo un bug o persino riscrivendo una parte confusa della documentazione.

Per contribuire a Laravel 10, ecco cosa devi fare:

  1. Vai al repository GitHub di Laravel e dai un'occhiata alle richieste pull contrassegnate con [10.x] nel titolo. Questo ti fornirà un quadro chiaro di tutte le richieste pull per Laravel 10. Se uno dei PR affronta il contributo che intendevi dare, vedi se puoi migliorarlo.
  2. Se il tuo contributo pianificato non è ancora stato affrontato da qualcun altro, puoi creare tu stesso un PR.
  3. Non vale la pena aggiungere tutto al codebase del framework. Pertanto, sforzati di implementare solo miglioramenti che saranno facili da mantenere in futuro e aiuteranno la stragrande maggioranza della comunità di Laravel.
  4. Assicurati di aderire alle linee guida sui contributi di Laravel per avere maggiori possibilità di unire le tue modifiche al framework.

Un altro motivo per amare Laravel 10 è che ti permette di vincere soldi per i tuoi contributi con la caccia ai bug! Vedremo quelli successivi.

Gara di caccia agli insetti di Laravel 10

Gara di caccia agli insetti di Laravel 10
Gara di caccia agli insetti di Laravel 10.

Laravel 10 ha annunciato un eccellente concorso in cui un contributore casuale ha la possibilità di vincere $ 1.000.

Questo sarà il primo concorso di questo genere nella storia di Laravel. È stato progettato per incoraggiare la comunità a trovare e correggere i bug nascosti in Laravel 10.

Le regole sono semplici:

  • Sono idonee solo le PR inviate al ramo 10.x del repository laravel/framework .
  • Verranno prese in considerazione solo correzioni di bug "autentiche". Nuove funzionalità, refactoring e correzioni di errori di battitura non vengono prese in considerazione.
  • Ogni correzione di bug deve essere supportata da un test.
  • Le correzioni di bug accettate verranno etichettate su GitHub e alla fine del concorso verrà annunciato un vincitore casuale.

Il concorso terminerà quando verrà rilasciata la prima versione stabile di Laravel 10. Eventuali richieste pull che sarebbero ancora in sospeso entro quel momento o inviate dopo il rilascio di Laravel 10 non saranno idonee.

Riepilogo

Non è tutto per questo articolo! Ci saranno ulteriori modifiche fino alla data di rilascio. Ma per il momento, Laravel 10 sembra essere estremamente promettente e siamo entusiasti di coprire tutti i doni che porta al mondo PHP.

Nel frattempo, se stai cercando altri modi per migliorare le prestazioni della tua app Laravel, potresti considerare di passare a un provider di hosting premium. Le soluzioni di Application Hosting di Kinsta sono tra le più veloci, sicure e facili da usare del settore, e sono specificamente progettate pensando agli sviluppatori, offrendo snellimento della produzione e supporto esperto 24 ore su 24, 7 giorni su 7 da parte dei nostri sviluppatori esperti.