Slide 1

Slide 1 text

CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 1 / 25 Migrando do PHP5 para o PHP7 www.galvao.eti.br php5 php7 * ElePHPant by Vincent Pontier

Slide 2

Slide 2 text

Presidente (2012-2017) Associação Brasileira de Profssionais PHP Diretor da PHP Conference Brasil Evangelista e Contribuinte para a Linguagem Zend Framework Evangelist para o ZTeam, da RogueWave / Zend Professor Convidado de Pós-Graduação, PR e SC Fedora Ambassador, LATAM 23+ anos desenvolvendo sistemas e aplicações com interface web 18+ destes com PHP 10+ com Zend Framework Palestrante em eventos nacionais e internacionais Instrutor de cursos presenciais e a distância Fundador* e membro do GU PHPRS Site: https://www.galvao.eti.br/ http://people.php.net/galvao Twitter: @galvao Facebook: https://www.facebook.com/galvao.eti.br/ Slides e Documentos: http://slideshare.net/ergalvao https://speakerdeck.com/galvao Github: http://github.com/galvao Quem?! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 2 / 25 www.galvao.eti.br Migrando do PHP5 para o PHP7

Slide 3

Slide 3 text

Setup CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 3 / 25 www.galvao.eti.br http://bit.ly/galvaoShared + Migrando do PHP5 para o PHP7

Slide 4

Slide 4 text

Razões para migrar CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 4 / 25 www.galvao.eti.br Migrando do PHP5 para o PHP7 PHP5 está morto*, longa vida ao PHP7! Qualidade Segurança Performance Pressão de Mercado * Apenas patches de Segurança até o fnal de 2018 (Mais detalhes aqui)

Slide 5

Slide 5 text

Migração: BC CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 5 / 25 www.galvao.eti.br PHP 5.* mysql_* RegExp POSIX Construtor PHP4 Tags Alternativas switch c/ múltiplos default warning setting timezone PHP 7.0.* mysqli_* ou PDO RegExp PCRE __construct

Slide 6

Slide 6 text

Migração: BC CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 6 / 25 www.galvao.eti.br PHP 5.6+ mcrypt_* Hashing session_id PHP 7.1.* openssl_* ... Migrando do PHP5 para o PHP7

Slide 7

Slide 7 text

Migração: BC CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 7 / 25 www.galvao.eti.br PHP 5.6+ mcrypt_* etc... PHP 7.2+ sodium ... Migrando do PHP5 para o PHP7

Slide 8

Slide 8 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 8 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 9

Slide 9 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 9 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 10

Slide 10 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 10 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 11

Slide 11 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 11 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 12

Slide 12 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 12 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 13

Slide 13 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 13 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 14

Slide 14 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 14 / 25 www.galvao.eti.br PHP 7.0 Scalar Type Hints Return Type Declarations Group Use Declarations Confguração de sessão via session_start Desserialização Filtrada NULL Coalesce Spaceship Classes Anônimas Migrando do PHP5 para o PHP7

Slide 15

Slide 15 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 15 / 25 www.galvao.eti.br PHP 7.1 Retorno do tipo void Tipos NULLable Visibilidade p/ Constantes Migrando do PHP5 para o PHP7

Slide 16

Slide 16 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 16 / 25 www.galvao.eti.br PHP 7.1 Retorno do tipo void Tipos NULLable Visibilidade p/ Constantes Migrando do PHP5 para o PHP7

Slide 17

Slide 17 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 17 / 25 www.galvao.eti.br PHP 7.1 Retorno do tipo void Tipos NULLable Visibilidade p/ Constantes Migrando do PHP5 para o PHP7

Slide 18

Slide 18 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 18 / 25 www.galvao.eti.br PHP 7.2 sodium* Argon2 p/ password_hash Debug de prepared statements Tipo object Migrando do PHP5 para o PHP7

Slide 19

Slide 19 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 19 / 25 www.galvao.eti.br PHP 7.2 sodium* Argon2 p/ password_hash Debug de prepared statements Tipo object Migrando do PHP5 para o PHP7

Slide 20

Slide 20 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 20 / 25 www.galvao.eti.br PHP 7.2 sodium* Argon2 p/ password_hash Debug de prepared statements Tipo object Migrando do PHP5 para o PHP7

Slide 21

Slide 21 text

Migração: Novas Features CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 21 / 25 www.galvao.eti.br PHP 7.2 sodium* Argon2 p/ password_hash Debug de prepared statements Tipo object Migrando do PHP5 para o PHP7

Slide 22

Slide 22 text

Migração sem Surpresas CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 22 / 25 www.galvao.eti.br display_errors = On error_reporting = E_ALL Migrando do PHP5 para o PHP7

Slide 23

Slide 23 text

Migração sem Surpresas CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 23 / 25 www.galvao.eti.br https://wiki.php.net/rfc Karma RFC Debate Mudanças Votação Aprovação Rejeição * Migrando do PHP5 para o PHP7

Slide 24

Slide 24 text

INFORME-SE! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 24 / 25 www.galvao.eti.br PHP7: More strict! (but only if you want it to be), by myself! http://bit.ly/php7-more-strict PHP7 is evolving! What’s new?, by myself! https://medium.com/the-white-hat-elephpant/php7-is-evolving-whats-new-4aa38090112f Referência, by Thomas Punt https://github.com/tpunt/PHP7-Reference PHP7 feature freeze, by Phil Sturgeon https://philsturgeon.uk/php/2015/03/15/php-7-feature-freeze/ An Exceptional Change in PHP 7.0, by Davey Shafik https://daveyshafik.com/archives/69237-an-exceptional-change-in-php-7-0.html Migrando do PHP5 para o PHP7

Slide 25

Slide 25 text

Muito obrigado! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 2/8/18 - 25 / 25 www.galvao.eti.br ? Dúvidas? ↓ Críticas? ↑ Elogios?! Migrando do PHP5 para o PHP7