{"id":10569,"date":"2017-08-18T17:29:30","date_gmt":"2017-08-18T11:59:30","guid":{"rendered":"https:\/\/www.carmatec.com\/?p=10569"},"modified":"2022-09-28T05:37:44","modified_gmt":"2022-09-28T05:37:44","slug":"preparare-il-sito-web-aggiornando-php-7","status":"publish","type":"post","link":"https:\/\/stage.carmatec.com\/it_it\/blog\/preparare-il-sito-web-aggiornando-php-7\/","title":{"rendered":"Come preparare il tuo sito web prima dell&#039;aggiornamento a PHP 7?"},"content":{"rendered":"<p>La versione PHP 7 si concentra principalmente sulla rimozione delle funzionalit\u00e0 deprecate nelle versioni precedenti e sul miglioramento della coerenza del linguaggio.<\/p>\n<p><strong>Al momento del rilascio di qualsiasi nuova versione:<\/strong><\/p>\n<ul style=\"font-weight: normal;\">\n<li>alcune estensioni possono essere rimosse<\/li>\n<li>alcune estensioni o funzionalit\u00e0 possono diventare deprecate<\/li>\n<li>alcune altre funzionalit\u00e0 possono essere modificate<\/li>\n<\/ul>\n<p>Il termine &quot;Deprecazione&quot; qui implica che ai programmatori viene offerta un&#039;alternativa migliore di una particolare estensione o funzione in modo che il suo utilizzo sia scoraggiato e nelle versioni future questa funzione o estensione possa essere completamente rimossa.<br \/>\nCi\u00f2 richiede l&#039;uso del documento di migrazione al momento della <a href=\"https:\/\/stage.carmatec.com\/it_it\/imparare-la-tecnologia\/preparare-il-sito-web-aggiornando-php-7\/\">aggiornamento a una versione pi\u00f9 recente<\/a>. Questo documento pu\u00f2 riguardare quanto segue:<\/p>\n<ul style=\"font-weight: normal;\">\n<li>Nuove caratteristiche e funzioni<\/li>\n<li>Caratteristiche e funzioni deprecate<\/li>\n<li>Caratteristiche e funzioni modificate<\/li>\n<li>Modifiche incompatibili con le versioni precedenti<\/li>\n<li>Nuove costanti globali<\/li>\n<li>Nuove classi e interfacce<\/li>\n<li>Modifiche ai moduli SAPI<\/li>\n<li>Estensioni e SAPI rimosse<\/li>\n<li>Altri cambiamenti<\/li>\n<\/ul>\n<p>Ecco i passaggi che possiamo seguire durante l&#039;aggiornamento a PHP 7 dalla versione precedente:<br \/>\nLa prima cosa da fare \u00e8 eliminare il se delle estensioni rimosse. IL <a href=\"https:\/\/stage.carmatec.com\/it_it\/imparare-la-tecnologia\/considera-la-migrazione-da-php-5-a-php-7-2017\/\">Migrazione PHP<\/a> document pu\u00f2 offrire diverse alternative per queste estensioni rimosse.<\/p>\n<p><strong>Al momento dell&#039;introduzione di PHP 7, le seguenti sono le estensioni rimosse:<\/strong><\/p>\n<ol style=\"font-weight: normal;\">\n<li>mssql<\/li>\n<li>mysql<\/li>\n<li>ereg<\/li>\n<li>sybase_ct<\/li>\n<\/ol>\n<p>In secondo luogo, dal documento di migrazione abbiamo le informazioni richieste sulle quali sono state modificate tutte le funzioni. Al momento dell&#039;introduzione di una nuova versione, possono essere introdotte anche alcune modifiche, come ad esempio:<\/p>\n<ul style=\"font-weight: normal;\">\n<li>modifica del tipo di reso<\/li>\n<li>rimozione di alcuni parametri<\/li>\n<\/ul>\n<p>Pertanto, dobbiamo verificare se qualcuna di queste funzioni modificate \u00e8 in uso sul nostro sito Web PHP, dobbiamo fare riferimento al documento di migrazione per queste e apportare le modifiche richieste di conseguenza.<\/p>\n<p><strong>Nel caso di PHP 7, alcune delle funzioni modificate sono le seguenti:<\/strong><\/p>\n<ul style=\"font-weight: normal;\">\n<li>Le funzioni mktime() e gmmktime() non accettano pi\u00f9 il parametro is_dst.<\/li>\n<li>Le funzioni substr() e iconv_substr() restituiscono ora una stringa vuota, dove stringa equivale alla lunghezza dei caratteri iniziali<\/li>\n<\/ul>\n<p>La terza cosa che deve essere fatta \u00e8 un tentativo di eliminare l&#039;uso di funzioni ed estensioni deprecate poich\u00e9 queste verranno eventualmente rimosse nelle versioni future.<\/p>\n<p><strong>Nel caso di PHP 7, ecco alcune delle funzionalit\u00e0 deprecate:<\/strong><\/p>\n<ol style=\"font-weight: normal;\">\n<li>Costruttori in stile PHP 4 \u2013 Per creare costruttori, PHP 4 utilizzava gli stessi metodi della classe in cui erano definiti, la quale \u00e8 una funzionalit\u00e0 deprecata e verr\u00e0 rimossa in futuro. Quindi, questi nomi di metodi ora devono essere sostituiti da __construct()<\/li>\n<li>Anche le chiamate statiche ai metodi non statici sono state deprecate e verranno rimosse nelle versioni future<\/li>\n<li>L&#039;opzione salt per la funzione password_hash() \u00e8 stata deprecata poich\u00e9 la funzione pu\u00f2 generare un salt crittograficamente sicuro nel caso in cui lo sviluppatore non fornisca il salt.<\/li>\n<\/ol>\n<p>La prossima, ovvero la quarta cosa da fare \u00e8 il trattamento delle modifiche incompatibili con le versioni precedenti. Al momento dell&#039;introduzione della nuova versione, \u00e8 necessario fare riferimento al documento di migrazione per le &quot;modifiche incompatibili con le versioni precedenti&quot;.<\/p>\n<p><strong>Ecco alcune delle modifiche incompatibili con le versioni precedenti:<\/strong><\/p>\n<ul style=\"font-weight: normal;\">\n<li>foreach non cambia pi\u00f9 il puntatore dell&#039;array interno<\/li>\n<li>global ora accetta solo variabili semplici<\/li>\n<li>Le variabili variabili non possono pi\u00f9 essere utilizzate con la parola chiave globale.<\/li>\n<li>Le stringhe esadecimali non sono pi\u00f9 considerate numeriche<br \/>\nPer esempio:<br \/>\n&lt;?php<br \/>\nvar_dump(\u00e8_numerico(&quot;0x123&quot;));<br \/>\n?&gt; L&#039;output dell&#039;esempio menzionato sopra in PHP 7 \u00e8:bool(false)<\/li>\n<li>Modifiche alla divisione per zero<br \/>\nIn precedenza, quando 0 veniva utilizzato come divisore per gli operatori divide(\/) o modulo(%), veniva emesso E_WARNING e veniva restituito false. Ora \u00e8 cambiato nell&#039;operatore di divisione che restituisce un float come +INF, -INF o NAN. L&#039;operatore del modulo E_WARNING \u00e8 stato rimosso e generer\u00e0 un&#039;eccezione DivisionByZeroError.<\/li>\n<\/ul>\n<p>Noi come uno dei leader <a href=\"https:\/\/stage.carmatec.com\/it_it\/azienda-di-sviluppo-php\/\" target=\"_blank\" rel=\"noopener noreferrer\">Societ\u00e0 di sviluppo PHP<\/a> vanta oltre un decennio di esperienza nell&#039;esecuzione di progetti di sviluppo web PHP per la sua clientela globale che opera in diversi settori. Utilizziamo gli strumenti e le tecniche pi\u00f9 all&#039;avanguardia per trovare le soluzioni pi\u00f9 efficienti per i tuoi problemi aziendali oppure puoi consultare il nostro &#039;<a href=\"https:\/\/stage.carmatec.com\/it_it\/assumere-sviluppatori\/assumere-uno-sviluppatore-php\/\" target=\"_blank\" rel=\"noopener noreferrer\">Assumi uno sviluppatore PHP<\/a>&#039; servizio in cui puoi valutare le competenze tecniche dei nostri sviluppatori, l&#039;approccio al tuo progetto e il loro lavoro passato per scegliere dal pool di talenti pi\u00f9 esperti del settore.<\/p>","protected":false},"excerpt":{"rendered":"<p>The PHP 7 release is mainly focused on removing functionality deprecated in its previous versions and, enhancing the consistency in the language. At the time of any new version release: some extensions can get removed some extensions or functionalities can get deprecated some other functionalities can get altered The term \u2018Deprecation\u2019 here, implies that the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":29477,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,19],"tags":[],"class_list":["post-10569","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-php-development"],"_links":{"self":[{"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/posts\/10569","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/comments?post=10569"}],"version-history":[{"count":2,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/posts\/10569\/revisions"}],"predecessor-version":[{"id":31324,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/posts\/10569\/revisions\/31324"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/media\/29477"}],"wp:attachment":[{"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/media?parent=10569"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/categories?post=10569"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stage.carmatec.com\/it_it\/wp-json\/wp\/v2\/tags?post=10569"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}