Slide 1

Slide 1 text

The Latest in PHP March 2017 Edition

Slide 2

Slide 2 text

Presented by Chris Gmyr @cmgmyr

Slide 3

Slide 3 text

PHP Releases 7.1.2, 7.0.[16-17], 5.6.30 • Bug Fixes • http://www.php.net/ChangeLog-7.php#7.1.2 • http://php.net/ChangeLog-7.php#7.0.17 • http://www.php.net/ChangeLog-7.php#7.0.16 • http://php.net/ChangeLog-5.php#5.6.30

Slide 4

Slide 4 text

PHP RFCs • Pending Implementation • https://wiki.php.net/rfc/ list_reference_assignment • In Voting • https://wiki.php.net/rfc/extended-string-types-for-pdo • https://wiki.php.net/rfc/deprecate-bareword-strings

Slide 5

Slide 5 text

PHPUnit • 5.7 support will end 2/2/18 • 6.0 became stable on 2/3/17 • Namespaced classes! PHPUnit_Framework_TestCase is now PHPUnit\Framework\TestCase https://github.com/sebastianbergmann/phpunit/wiki/Release- Announcement-for-PHPUnit-6.0.0 Note: PHPUnit 7.0 (2/2/18) will not support PHP 7.0

Slide 6

Slide 6 text

Laravel • 5.4.[14-15] • Collections: whereNotIn() and tap() • Query builder: orderByDesc($column) • Blade: @includeWhen(Auth::user(), 'nav.user') • Forge API • File Testing…

Slide 7

Slide 7 text

Laravel File Testing Storage::fake('avatars'); $response = $this->json('POST', '/avatar', [ 'avatar' => UploadedFile::fake()->image('avatar.jpg') ]); // Assert the file was stored... Storage::disk('avatars')->assertExists('avatar.jpg'); https://laravel.com/docs/5.4/http-tests#testing-file-uploads

Slide 8

Slide 8 text

Symfony 3.2.[5-6], 2.8.18, 2.7.25 • https://symfony.com/blog/symfony-3-2-6-released • https://symfony.com/blog/symfony-3-2-5-released • https://symfony.com/blog/symfony-2-8-18-released • https://symfony.com/blog/symfony-2-7-25-released

Slide 9

Slide 9 text

Drupal 8.3.0-rc[1, 2], 8.2.7 • https://www.drupal.org/project/drupal/releases/8.3.0-rc2 • https://www.drupal.org/project/drupal/releases/8.3.0-rc1 • https://www.drupal.org/project/drupal/releases/8.2.7 Because of security vulnerabilities, you should update to 8.2.7 immediately.

Slide 10

Slide 10 text

Wordpress 4.7.3 Security Release • Cross-site scripting (XSS) via media file metadata. • Control characters can trick redirect URL validation. • Unintended files can be deleted by administrators using the plugin deletion functionality. • Cross-site scripting (XSS) via video URL in YouTube embeds. • Cross-site scripting (XSS) via taxonomy term names. • Cross-site request forgery (CSRF) in Press This leading to excessive use of server resources. https://wordpress.org/news/2017/03/wordpress-4-7-3-security-and-maintenance-release/

Slide 11

Slide 11 text

PHPStorm 2017.1 RC Available • Codeception Support • PHPUnit 6 Support • Better Laravel Blade Support (includeWhen, component, slot) • Improved PHP Formatting • Vue.js Support • and much more… https://www.jetbrains.com/phpstorm/nextversion/

Slide 12

Slide 12 text

PHP Conferences - March Midwest PHP 2017 March 17–18, Bloomington, Minnesota, https://2017.midwestphp.org WordCamp London March 17–19, London, U.K. https://2017.london.wordcamp.org PHP Experience 2017 March 27–28, Sao Paulo, Brazil https://phpexperience2017en.imasters.com.br SymfonyLive Paris 2017 March 31–31, Paris, France http://paris2017.live.symfony.com

Slide 13

Slide 13 text

PHP Conferences - April PHP Yorkshire April 8, York, U.K. https://www.phpyorkshire.co.uk Lone Star PHP 2017 April 20–22, Addison, TX http://lonestarphp.com DrupalCon Baltimore April 24–28, Baltimore, MD https://events.drupal.org/baltimore2017

Slide 14

Slide 14 text

Nomad PHP US Yielding Higher-Performance PHP Applications By Ian Littman Europe Zend Framework Done Right By Gary Hockin https://nomadphp.com/

Slide 15

Slide 15 text

Notable News & Articles • https://dev.to/paragonie/php-72-the-first-programming-language-to-add-modern- cryptography-to-its-standard-library • https://laravel-news.com/laravel-5-5-lts • http://www.codediesel.com/php/new-features-in-php-7-1/ • http://www.codediesel.com/php/handling-multiple-exceptions-in-php-7-1/ • https://php-and-symfony.matthiasnoback.nl/2017/02/convenient-ducktyping-in-php/ • https://www.entropywins.wtf/blog/2016/11/24/implementing-the-clean-architecture/ • http://www.giorgiosironi.com/2017/02/book-review-fifty-quick-ideas-to.html • https://qafoo.com/blog/096_refactoring_extract_data_objects.html • https://kinsta.com/blog/php-versions/

Slide 16

Slide 16 text

Next Month @ TrianglePHP Application Security for the Modern Web Presented By Phillip Maddux of Signal Sciences Thursday, April 13 6pm Atlantic BT https://www.meetup.com/trianglephp/events/237968292/