Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ewolucja PHP: PHP 5.6, NG, PHP 7, HHVM
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Leszek Krupiński
November 29, 2014
Programming
310
2
Share
Ewolucja PHP: PHP 5.6, NG, PHP 7, HHVM
meet.php, Poznań, 29.11.2014 r
Leszek Krupiński
November 29, 2014
More Decks by Leszek Krupiński
See All by Leszek Krupiński
So that the daemon won’t die
leafnode
2
410
Practical PHP7
leafnode
2
480
Dobrze posól swoje hasło
leafnode
0
120
Dobrze posól swoje hasło (z notatkami)
leafnode
0
110
PHPNG kontra HHVM
leafnode
0
120
PHPNG kontra HHVM (z notatkami)
leafnode
0
83
Sculpin - Generowanie statycznych stron w PHP
leafnode
2
76
Skalowanie aplikacji PHP
leafnode
1
430
Varnish to the Rescue
leafnode
0
140
Other Decks in Programming
See All in Programming
安いハードウェアでVulkan
fadis
1
930
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6k
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
170
CDK Deployのための ”反響定位”
watany
0
410
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
720
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
140
의존성 주입과 모듈화
fornewid
0
110
「速くなった気がする」をデータで疑う
senleaf24
0
150
Rethinking API Platform Filters
vinceamstoutz
0
11k
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
230
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
230
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Everyday Curiosity
cassininazir
0
190
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.4k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
250
Tell your own story through comics
letsgokoyo
1
890
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Evolving SEO for Evolving Search Engines
ryanjones
0
170
The untapped power of vector embeddings
frankvandijk
2
1.7k
The Curse of the Amulet
leimatthew05
1
11k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
Transcript
EWOLUCJA PHP PHP 5.6, NG, PHP 7, HHVM Leszek Krupiński
meet.php 29.11.2014
LEAFNODE
TERAZ
PHP 5.6
DROBNE ZMIANY SKŁADNIOWE
CONSTANT SCALAR EXPRESSIONS
None
VARIADICS
None
ARGUMENT UNPACKING
None
EKSPONENTA
None
USE CONST USE FUNC
None
PRZEŁADOWANIE OPERATORÓW GMP
None
HASH_EQUALS()
None
__DEBUGINFO()
None
PHPDBG
None
• domyślne kodowanie • ponowne użycie php://input • upload dużych
plików • przeciążenie operatorów GMP • gost-crypto • poprawki do SSL/TLS • pgsql async
PHP 7
PHP NG
GŁĘBOKA REFAKTORYZACJA
OPTYMALIZACJA STRUKTUR WEWNĘTRZNYCH
OPERACJE NA STOSIE
ZARZĄDZANIE PAMIĘCIĄ
IMMUTABLE ARRAY
EFEKTY
30% LEPSZE WYNIKI W TESTACH SYNTETYCZNYCH
20-70% SZYBSZE DZIAŁANIE PRAWDZIWYCH APLIKACJI
None
LIES, DAMNED LIES, BENCHMARKS
Autor: Dmitry Stogov
Autor: Dmitry Stogov
http://devplant.net/2014/08/11/optimizing-php-code/
ABSTRACT SYNTAX TREE
LEKSER PARSER KOMPILATOR URUCHOMIENIE LEKSEMY WĘZŁY OPCODE
None
URUCHOMIENIE
NIEKOMPATYBILNOŚĆ
ROZSZERZENIA • interbase • oci8 • mssql • pdo_oci •
pdo_dblib • sybase_ct
DROBNE ZMIANY W SKŁADNI
None
HHVM
HIPHOP FOR PHP
KOD PHP KOD C KOMPILACJA URUCHOMIENIE
HHVM
KOD PHP BYTECODE JIT COMPILER URUCHOMIENIE
HACK
• Return type hinting • Member variable types • Type-safe
collections • Generics • Type aliasing • Nullable types • Tuples • Shapes
None
None
None
None
None
XHP
TRANSPILER
ZGODNOŚĆ HHVM Z PHP
• Open Source Tests: 95.18% • 27 Frameworks at 100%
http://hhvm.com/frameworks/
URUCHAMIANIE
UŻYWAĆ?
PRZYSZŁOŚĆ
RETURN TYPE HINTING
None
KOLEJNE INTERPRETERY
SPECYFIKACJA JĘZYKA
CZY POTRZEBNE JEST WIELE INTERPRETERÓW?
Linki • http://bit.ly/phpng-zendcon • http://bit.ly/php-ast • http://bit.ly/php7timeline • https://github.com/php/php-langspec •
http://bit.ly/hhvm-phpcon2014 • https://wiki.php.net/phpng • https://wiki.php.net/phpng-int • https://wiki.php.net/rfc
PYTANIA?
DZIĘKUJĘ @leafnode http://speakerdeck.com/leafnode/