Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Ewolucja PHP: PHP 5.6, NG, PHP 7, HHVM
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Leszek Krupiński
November 29, 2014
Programming
320
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ewolucja PHP: PHP 5.6, NG, PHP 7, HHVM
meet.php, Poznań, 29.11.2014 r
Leszek Krupiński
November 29, 2014
Transcript
74 slides
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/
More Decks by Leszek Krupiński
See All by Leszek Krupiński
So that the daemon won’t die
leafnode
2
420
Practical PHP7
leafnode
2
520
Dobrze posól swoje hasło
leafnode
0
130
Dobrze posól swoje hasło (z notatkami)
leafnode
0
120
PHPNG kontra HHVM
leafnode
0
130
PHPNG kontra HHVM (z notatkami)
leafnode
0
92
Sculpin - Generowanie statycznych stron w PHP
leafnode
2
85
Skalowanie aplikacji PHP
leafnode
1
440
Varnish to the Rescue
leafnode
0
150
Other Decks in Programming
See All in Programming
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
4
3.8k
React Native経験者が Flutterを30⽇間触って驚いたこと
3saito
0
170
Kawaiicon: Kubernetes, it's no longer cool, but let's secure it anyway!
barnbarn
0
130
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
15
11k
小さなアプリを作って公開するまで
onozaty
0
160
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
820
AI Augmentation Techniques with Liberty
ivargrimstad
1
440
そのデザイントークン、Flutterでも同じ見た目になりますか?
nakamizu
0
330
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
370
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
200
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
650
AWS CDKを理解するために公式の定義を深掘って解説してみる / Understanding AWS CDK by Digging into Its Official Definition
akihisaikeda
3
300
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
570
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
So, you think you're a good person
axbom
PRO
2
2.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
AI: The stuff that nobody shows you
jnunemaker
PRO
11
1.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
371
20k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
440
ラッコキーワード サービス紹介資料
rakko
5
5.8M
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M