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
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PHP8をざっくり解説してみる
大塚真言
January 23, 2021
More Decks by 大塚真言
See All by 大塚真言
自社プロダクトを作ってみた.pdf
shingen29
0
320
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
150
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
340
ユースケース駆動開発で自社プロダクトを作ってみた!
shingen29
1
8k
MDN Web Docsから学ぶ 公式ドキュメントを読むメリット
shingen29
0
940
最近のプロジェクトを振り返ってみる
shingen29
0
430
Style Guideとstylelintを使ってHTML/CSSを綺麗に書こう!
shingen29
2
930
Stripe CLIを触ってみた!
shingen29
1
280
プロジェクト管理ツールとしてGitLabと向き合ってみる
shingen29
0
150
Other Decks in Programming
See All in Programming
symfony/aiとlaravel/boost
77web
0
130
共通化で考えるべきは、実装より公開する型だった
codeegg
0
240
関数型プログラミングのメリットって何だろう?
wanko_it
0
180
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
860
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
230
継続モナドとリアクティブプログラミング
yukikurage
3
610
どこまでゆるくて許されるのか
tk3fftk
0
490
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
330
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
340
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
130
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
210
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
170
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
390
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
410
Designing for Timeless Needs
cassininazir
1
370
Thoughts on Productivity
jonyablonski
76
5.2k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.4k
sira's awesome portfolio website redesign presentation
elsirapls
0
300
The Language of Interfaces
destraynor
162
27k
Why Our Code Smells
bkeepers
PRO
340
58k
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ܕ͕Ճ͞ΕɺܕγεςϜ͕ΑΓڧݻʹ ͳͬͨ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ