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
PHP8をざっくり解説してみる
Search
大塚真言
January 23, 2021
Programming
0
300
PHP8をざっくり解説してみる
大塚真言
January 23, 2021
Tweet
Share
More Decks by 大塚真言
See All by 大塚真言
自社プロダクトを作ってみた.pdf
shingen29
0
270
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
87
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
260
ユースケース駆動開発で自社プロダクトを作ってみた!
shingen29
1
6.7k
MDN Web Docsから学ぶ 公式ドキュメントを読むメリット
shingen29
0
850
最近のプロジェクトを振り返ってみる
shingen29
0
360
Style Guideとstylelintを使ってHTML/CSSを綺麗に書こう!
shingen29
2
810
Stripe CLIを触ってみた!
shingen29
1
220
プロジェクト管理ツールとしてGitLabと向き合ってみる
shingen29
0
87
Other Decks in Programming
See All in Programming
2025/3/18 サービスの成長で生じる幅広いパフォーマンスの問題を、 AIで手軽に解決する
shirahama_x
0
160
Devin , 正しい付き合い方と使い方 / Living and Working with Devin
yukinagae
2
650
보일러플레이트 코드가 진짜 나쁜 건가요?
gaeun5744
0
370
プログラミング教育のコスパの話
superkinoko
0
120
Going Structural with Named Tuples
bishabosha
0
170
Django for Data Science (Boston Python Meetup, March 2025)
wsvincent
0
240
List とは何か? / PHPerKaigi 2025
meihei3
0
560
goにおける コネクションプールの仕組み を軽く掘って見た
aronokuyama
0
140
eBPF Updates (March 2025)
kentatada
0
130
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
7
3.9k
신입 안드로이드 개발자의 AI 스타트업 생존기 (+ Native C++ Code를 Android에서 사용해보기)
dygames
0
510
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
2
1.1k
Featured
See All Featured
Code Review Best Practice
trishagee
67
18k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
500
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Building an army of robots
kneath
304
45k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Why Our Code Smells
bkeepers
PRO
336
57k
Transcript
PHP8Λͬ͘͟Γղઆͯ͠ΈΔ 2021/1/22 WebφΠτٶ࡚ vol.12 େ௩ਅݴ
ࣗݾհ
ࣗݾհ -BSBWFM 7VFKT 'JSFCBTF αφେ͖ͳ8FCΤϯδχΞ
ձࣾհ ߹ಉձࣾϊϚυϦ ۀظ ϝϯόʔ໊ 8FCαʔϏε։ൃ &$αΠτ։ൃ
202011݄26 Կͷʁ
ͷੜ
Ͱͳ͘
PHP8ͷੜ ʢϦϦʔεʣ
ओͳมߋ • JITίϯύΠϧʹΑΔੑೳվળ • Nullsafeԋࢉࢠʢψϧ҆શΦϖϨʔλʣ • Unionܕ • Matchࣜ •
ଞʹଟ
ͦͷલʹ Ξϯέʔτ
ͲͷόʔδϣϯΛͬͯΔʁ 1. PHP 5.x 2. PHP 7.0ʙ7.2 3. PHP 7.3ʙ7.4
4. PHP 8.0
ҎԼ 7.4 7.3 7.2 7.0-7.1 5.6 5.5ҎԼ IUUQTXUFDITDPNUFDIOPMPHJFTEFUBJMTQMQIQ όʔδϣϯ͝ͱͷ༻
PHP8ͷ৽ػೳ
JITίϯύΠϧ • JITʢJust-in-Time Compilerʣ˞࣮ߦ࣌ίϯύΠϥ • ίʔυΛϝϞϦʔʹΩϟογϡ͢ΔOPCacheͱซ༻ • ωΠςΟϒίʔυΛϝϞϦʔʹΩϟογϡ͢Δ͜ͱͰϓϩ άϥϜ࣮ߦΛߴԽ •
ΞϧΰϦζϜܥॲཧͰ2~3ഒఔ࣮ߦ্͕ͨ͠ɺ WordPressͳͲͷWebΞϓϦέʔγϣϯͰ%ఔ͔͠ ্͠ͳ͍
Nullsafeԋࢉࢠ DPVOUSZOVMM JG TFTTJPOOVMM \ VTFSTFTTJPOVTFS JG VTFSOVMM \ BEESFTTVTFSHFU"EESFTT
JG BEESFTTOVMM \ DPVOUSZBEESFTTDPVOUSZ ^ ^ ^ DPVOUSZTFTTJPO VTFS HFU"EESFTT DPVOUSZ 1)1 1)1 ifจʹΑΔnullνΣοΫ͕ෆཁʹͳΔ
Unionܕ !QBSBNqPBUcJOUOVNCFS QVCMJDGVODUJPOTBNQMF OVNCFS \
FDIPOVNCFS ^ UIJTTBNQMF UFHFIPHF ࣮ߦՄೳ QVCMJDGVODUJPOTBNQMF qPBUcJOUOVNCFS \ FDIPOVNCFS ^ UIJTTBNQMF UFHFIPHF ࣮ߦΤϥʔ 1)1 1)1 ࣮ߦ࣌ʹUnionܕͷܕνΣοΫ͕Ͱ͖Δ 1)1ͰΞϊςʔγϣϯ ʹΑΔิ
Matchࣜ TXJUDI \ DBTF SFTVMU0IOP CSFBL DBTF SFTVMU5IJTJTXIBU*FYQFDUFE CSFBL
^ FDIPSFTVMU 0IOP FDIPNBUDI \ 0IOP 5IJTJTXIBU*FYQFDUFE ^ 5IJTJTXIBU*FYQFDUFE 1)1 1)1 ݫີͳൺֱɺbreakจ͕ෆཁ
·ͱΊ • JITίϯύΠϧ͕ಋೖ͞Ε͕ͨɺ࣮ӡ༻ͷWebΞ ϓϦͷੑೳ্͋·ΓظͰ͖ͳ͍ • MatchࣜNullsafeԋࢉࢠΛ͏͜ͱͰεϦϜ ͳίʔυΛॻ͚Δ • Unionܕ͕Ճ͞ΕɺܕγεςϜ͕ΑΓڧݻʹ ͳͬͨ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ