PHP 7: 10 cose che devi sapere
Sei uno sviluppatore web o il proprietario di un sito web? I tuoi siti funzionano su CMS con PHP come WordPress, Drupal, Joomla o Magento? Poi ho una buona notizia per te: la versione beta completa del nuovo PHP 7 è stata recentemente pubblicata . La versione principale 7.0.0 contiene così tante fantastiche funzionalità che abbiamo deciso di dedicare a questo post. Ma prima, dobbiamo inserire alcuni promemoria.
Si noti che PHP 7 è ancora in fase di sviluppo, quindi non utilizzarlo in produzione fino a novembre, quando verrà rilasciata la versione finale . Se - come utente futuro - vuoi prendere la tua giusta quota dal processo di sviluppo, puoi aiutare a scaricare l'ultima beta, a giocarci nell'ambiente di test e a segnalare i bug che hai trovato durante il test. Per scoprire quando sarà la prossima beta, ecco il calendario del progetto.
Con quello fuori mano, diamo un'occhiata a PHP 7.
1. Il nome PHP 7 (non 6)
L'attuale versione stabile utilizza il numero di versione PHP 5.6. Dopo alcune controversie, il team di sviluppo ha deciso di omettere il nome di PHP 6 per la prossima major release. PHP 6 esisteva già in passato come progetto sperimentale ma non ha mai raggiunto la fase di produzione.
Per impedire agli utenti di mescolare il precedente tentativo con lo sviluppo più recente, la nuova versione principale verrà eseguita con il nome di PHP 7.
2. Il nuovo marchio Zend EngineIl motore Zend alimenta PHP dal 1999 quando è stato introdotto con la nuova versione di PHP 4. Zend - non confondere con Zend Framework - è un motore di esecuzione open source scritto in C che interpreta il linguaggio PHP. Le attuali serie PHP 5.X utilizzano Zend Engine II che ha migliorato la funzionalità del motore iniziale e aggiunge un modello di oggetto estensibile e un significativo miglioramento delle prestazioni del linguaggio.
PHP 7 riceve una nuova versione del motore con il nome in codice di PHP # NG (Next Generation).
3. Due volte la velocitàIl vantaggio più facilmente riconoscibile del nuovo motore PHPNG è il significativo miglioramento delle prestazioni. Il team di sviluppo di PHPNG ha refactored il motore di Zend e ha ottimizzato l'utilizzo della memoria.
I risultati? Puoi vedere i benchmark delle prestazioni forniti dal Team Zend Performance di seguito. Usando PHP 7 non solo il tuo codice verrà eseguito più velocemente ma avrai anche bisogno di meno server per servire la stessa quantità di utenti .
4. Facilita la gestione degli errori
Per usare un eufemismo, gestire errori fatali e catchable fatali non è mai stato un compito facile per i programmatori PHP. Le nuove eccezioni del motore ti consentiranno di sostituire questo tipo di errori con eccezioni. Se l'eccezione non viene rilevata, PHP continuerà a restituire gli stessi errori fatali che ha nella serie 5.X corrente.
I nuovi oggetti \ EngineException non estendono la classe di base \ Exception . Ciò garantisce la compatibilità con le versioni precedenti e genera due diversi tipi di eccezioni nella gestione degli errori: le eccezioni tradizionali e del motore .
Per consentire ai programmatori di intercettarli entrambi, PHP 7 introduce una nuova classe padre condivisa sotto il nome di \ BaseException .
5. Supporto per sistemi Windows a 64 bitPHP è un membro di spicco dello stack LAMP, il che significa che il suo ambiente nativo è Linux, ma è anche possibile eseguirlo su un sistema Windows. Le serie 5.X non forniscono ancora un numero intero a 64 bit o un supporto per file di grandi dimensioni, quindi finora le build x64 sono state considerate sperimentali .
PHP 7 cambierà questo dato che introduce un supporto coerente a 64 bit, il che significa che saranno supportati sia gli interi nativi a 64 bit che i file di grandi dimensioni, consentendo di eseguire in modo sicuro la lingua sul sistema Windows a 64 bit in futuro.
6. Nuovi astronavi e operatori a coalescenza nulleL' operatore Spaceship funziona sotto il nome ufficiale di Combined Comparison Operator. La notazione del nuovo operatore assomiglia a questo: <=>
(un po 'come un'astronave semplificata, se lo immagini bene).
L'operatore di spacehip restituisce 0 se entrambi gli operandi sono uguali, 1 se left è maggiore e -1 se right è maggiore. Viene anche chiamato operatore di confronto a tre vie e già esiste in altri linguaggi di programmazione popolari come Perl e Ruby.
L'operatore Null Coalescing è denotato con due punti interrogativi (??). Puoi usarlo quando vuoi verificare se qualcosa esiste e restituire un valore predefinito, nel caso non lo fosse. L'operatore di coalesce restituisce il risultato del suo primo operando, se esiste e non è nullo, e il secondo operando in qualsiasi altro caso.Ecco come il nuovo operatore riduce il tempo trascorso con le dichiarazioni di base:
7. Abilita dichiarazioni di tipo accurateHai mai voluto evitare valori di ritorno non intenzionali dichiarando il tipo di ritorno di una funzione? Bene, il nuovo PHP 7 consente agli sviluppatori di migliorare la qualità del loro codice con l'aiuto delle dichiarazioni di tipo restituito.
L'immagine sotto mostra un caso d'uso molto semplice in cui la funzione foo () dovrebbe restituire un array. Guarda qui esempi più complicati.
Per migliorare ulteriormente la funzionalità, PHP 7 introduce 4 nuove dichiarazioni di tipi per i tipi scalari: int, float, string e bool . I nuovi tipi scalari consentono agli sviluppatori di indicare che si aspettano interi, float, stringhe o booleani da restituire. I nuovi tipi di scalari introdotti da PHP 7 saranno supportati anche dall'argomento Type Hints che consente agli sviluppatori di forzare il tipo di parametri dalla serie PHP 5.X.8. Aggiunge classi anonime
PHP 7 consente di utilizzare classi anonime, già una pratica consolidata in altri linguaggi orientati agli oggetti come C # e Java. Una classe anonima è una classe senza un nome. L'oggetto che crea un'istanza ha la stessa funzionalità di un oggetto di una classe denominata.
La sintassi è uguale a quella a cui siamo abituati nelle classi PHP tradizionali, manca solo il nome. Se le classi anonime vengono utilizzate bene, possono velocizzare la codifica e il tempo di esecuzione . Le classi anonime sono eccellenti quando una classe viene utilizzata una sola volta durante l'esecuzione e nei casi in cui una classe non ha bisogno di essere documentata.
9. Facilita le importazioni dallo stesso spazio dei nomiLa nuova funzione Group Use Declarations sarà idilliaca per quelli di voi che vogliono importare molte classi dallo stesso spazio dei nomi . La nuova sintassi riduce la verbosità, rende il tuo codice più ordinato e più facile agli occhi e ti consente di risparmiare un sacco di tempo per la digitazione.
Sarà anche più facile leggere e correggere i codici, poiché le dichiarazioni di utilizzo di gruppo aiutano a identificare le importazioni che appartengono allo stesso modulo.
10. Pulisce la stanzaL'obiettivo di PHP 7 era liberare lo spazio per consentire il miglioramento, quindi era necessario liberarsi di molte funzionalità deprecate e di estensioni e API del server obsolete e non supportate. Se vuoi verificare quali sono questi in dettaglio, clicca qui e qui.
Tutti gli elementi rimossi sono stati deprecati per un po 'in PHP 5 quindi molto probabilmente non li hai usati per molto tempo. Tuttavia, tieni presente che se hai un'app legacy in esecuzione su versioni precedenti di PHP, il nuovo PHP 7 può potenzialmente violare il codice .
6 punti per rimanere sul campo come scrittore freelance
Questo articolo fa parte della nostra "Guida alle serie freelance", composta da guide e suggerimenti per aiutarti a diventare un lavoratore autonomo migliore. Clicca qui per saperne di più da questa serie. La scrittura freelance è una professione straordinaria. Ci vuole diligenza, concentrazione, dedizione e impegno verso gli altri per farlo bene.
Top 5 emulatori Android per il tuo desktop
Un emulatore Android ti consente di eseguire Android su Windows, Mac o Linux . Ciò ti consente di accedere alle funzioni e alle app Android senza dover acquistare un dispositivo Android, un'ottima notizia per le persone che non desiderano realmente acquistare un nuovo dispositivo Android solo per testare l'app o qualsiasi altro prodotto che stanno sviluppando.