Upload
pierre-joye
View
1.597
Download
1
Tags:
Embed Size (px)
DESCRIPTION
What's up in php.net, php 5.4 &co.
Citation preview
www.web-developer-conference.de
Pierre JoyePHP / Microsoft OSTC
PHP 5.4 and nextWhat’s new in PHP?
www.web-developer-conference.de
Pierre Joye@pierrejoye
IRC Freenode, EFNet
@Pierre
www.web-developer-conference.de
Pierre JoyePHP (Core) developer
(almost) crazy guy behind PHP/Windows
Portability Fanatic
www.web-developer-conference.de
php.net?(da passiert heh nichts, oder doch?)
www.web-developer-conference.de
Voting process
• Project leaders can vote• Clear and open processes and votes• https://wiki.php.net/rfc/voting• End of the trolls (almost)
www.web-developer-conference.de
RFC
“PHP releases have always been done spontaneously, in a somehow chaotic way. Individual(s) decided when a release will happen and what could or could fit in. Release managers role are unclear and the way to nominate them is not clearly defined either.
The goals of this RFC aim to solve these issues while giving to us, our users and 3rd parties (distributions, contributors, etc.) more visibility and the ability to actually have a roadmap, or plan developments.”
Felipe Pena, Etienne Kneuss, Stanislav Malyshev, Gustavo André dos Santos Lopes, David Soria Parra, Christian Stocker, Rob Richards, Pierre Joye, Zeev Suraski, Ilia Alshanetsky
https://wiki.php.net/rfc/releaseprocess
www.web-developer-conference.de
RFC
• Release cycle• BC policy• Security release policy
www.web-developer-conference.de
Release cycle
5.4 • 2011/11
5.5 • 2012/11
6.0 • 2013/11
www.web-developer-conference.de
5.4
5.4.1 5.4.3 …5.4.2 5.4.5 5.4.14 EOL
Release cycle2011 2012 2013
5.5
5.5.1 5.5.35.5.2 …
2014
6.0
6.0.1 6.0.36.0.2 6.0.4 …
www.web-developer-conference.de
Backward Compatibility
5.4
5.5
6.0
BC Break not allowed
BC Break allowed (if desired)
www.web-developer-conference.de
php?(da passiert heh nichts, oder doch?)
www.web-developer-conference.de
“All PHP users should note that the PHP 5.2 series is NOT supported anymore.”
www.php.net
www.web-developer-conference.de
“If you aren’t running PHP 5.3 on Windows, you’re lucky…because you have a 40% performance boost coming.” Rasmus Lerdorf
Seattle PHP Meetup/October 2011
www.web-developer-conference.de5.4
www.web-developer-conference.de
Speed!
www.web-developer-conference.de
+55%raw performance improvements
www.web-developer-conference.de
23.759
www.web-developer-conference.de
15.992
www.web-developer-conference.de
Bench source
microbench.php
php’s src Zend/micro-bench.php
or via svn:
http://svn.php.net/viewvc/php/php-src/branches/PHP_5_4/Zend/micro_bench.php
www.web-developer-conference.de
Speed!(for the oldy)
www.web-developer-conference.de
APC + IgBinary
www.web-developer-conference.de
www.web-developer-conference.de
Drupal 7
www.web-developer-conference.de
I don’t want no web server(or why in the world should I use Apache, IIS or nginx ;-)
www.web-developer-conference.de
www.web-developer-conference.de
www.web-developer-conference.de
Laziness!(or the short array syntax)
www.web-developer-conference.de
www.web-developer-conference.de
Arrrray-ify(array dereferencing, save me a line)
www.web-developer-conference.de
(reminder: References are not pointers)
www.web-developer-conference.de
www.web-developer-conference.de
www.web-developer-conference.de
Indirect method call
www.web-developer-conference.de
www.web-developer-conference.de
What we were all waiting for!(goto is already here btw)
www.web-developer-conference.de
Binary format
www.web-developer-conference.de
www.web-developer-conference.de
Traits
www.web-developer-conference.de
Traits? ”it is just compiler assisted copy and paste”
Stefan Marr
http://marc.info/?l=php-internals&m=128993895520538&w=2
www.web-developer-conference.de
Evolution(s)
www.web-developer-conference.de
Day 1
www.web-developer-conference.de
www.web-developer-conference.de
Day 2
www.web-developer-conference.de
www.web-developer-conference.de
Day 3
www.web-developer-conference.de
www.web-developer-conference.de
www.web-developer-conference.de
(and correct implementation)Multiple traits
www.web-developer-conference.de
www.web-developer-conference.de
Duplication Extends Traits65
70
75
80
85
90
Traits vs Extends vs Copy/Paste
www.web-developer-conference.de
Use Traits!
www.web-developer-conference.de
• MySQLnd– Plugins
• Session wrapper OO support– https://wiki.php.net/rfc/session-oo
• Upload progress for session data– https://wiki.php.net/rfc/session_upload_progress
• JsonSerializable interface• Dtrace support
www.web-developer-conference.de
PHP needs you!
www.web-developer-conference.de
• Test PHP 5.4 beta/RC releases–Using your apps–Run the tests suite
• Report bugs• Ask features
www.web-developer-conference.de
resources
• Script used in this talk https://github.com/pierrejoye/webdevcon2011
• 5.4 https://wiki.php.net/todo/php54• 5.4 migration guide (work in progress)
http://de3.php.net/manual/en/migration54.php• Built-in webserver RFC&doc
• https://wiki.php.net/rfc/builtinwebserver• http://
php.net/manual/en/features.commandline.webserver.php
www.web-developer-conference.de
Resources
• Other RFCs:– https://wiki.php.net/rfc
• Traits documentation– http://www.php.net/traits