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
HAYATO FUKUSHIMA
April 28, 2021
Programming
78
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
php8について
社内勉強会での発表資料
HAYATO FUKUSHIMA
April 28, 2021
More Decks by HAYATO FUKUSHIMA
See All by HAYATO FUKUSHIMA
ベッドロック便利だなという話
fukushimasurao
0
38
Sveltについて調べてみた
fukushimasurao
0
31
エンジニアの勉強法ハックLT.pdf
fukushimasurao
2
160
コミュニケーションについて
fukushimasurao
0
110
コミュニケーション_について.pdf
fukushimasurao
2
500
拡張管理で時間管理(VS Code Meetup #2 - Live Share編)
fukushimasurao
2
860
PWA 勉強会@G's Academy
fukushimasurao
0
360
PHP勉強会 LT LINE BOTについて
fukushimasurao
0
140
20190517 LINE BOT 自慢大会 #3
fukushimasurao
1
300
Other Decks in Programming
See All in Programming
ソフトウェアラスタライザ
fadis
1
780
私のClaude Code活用法 (個人開発編) - PHPerKaigi mini #4(2026/08/24)
panda_program
1
210
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
XHTMLが残したもの
yosuke_furukawa
PRO
1
380
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
810
FDEとは、何者なのか?
masapyon1212
0
130
レビュー履歴をAIに食わせて、 Compose移行を加速するs
shihochan
0
260
Discordを用いたラボオートメーション関連情報収集の自動化
noguhiro2002
0
500
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.4k
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
430
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
550
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
570
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1369
210k
We Are The Robots
honzajavorek
0
330
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
310
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
How GitHub (no longer) Works
holman
316
150k
Design in an AI World
tapps
1
300
How to Talk to Developers About Accessibility
jct
2
540
Optimising Largest Contentful Paint
csswizardry
37
3.9k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Abbi's Birthday
coloredviolet
3
9.7k
Odyssey Design
rkendrick25
PRO
2
800
Transcript
PHP8の話 2021 / 4 / 27 ふくしま
目次 ✅ php8とは ✅ php8の特徴 / 代表的な導入項目 ✅ デメリット(注意点) ✅
周辺への影響 ✅ まとめ
目次 ✅ php8とは 👈 ✅ php8の特徴 / 代表的な導入項目 ✅ デメリット(注意点)
✅ 周辺への影響 ✅ まとめ
PHP8とは 2020年、PHPは25周年 「PHP 8」 は 2020年11月26日にリリース
目次 ✅ php8とは ✅ php8の特徴 / 代表的な導入項目 👈 ✅ デメリット(注意点)
✅ 周辺への影響 ✅ まとめ
TOO MANY
JIT(Just In Time Compiler) について JITコンパイラは - コンピュータのプログラムが実行される直前、 - そのプログラムをマシンの
CPUに応じた機械語に コンパイルをおこなう。 PHP自体もスクリプト言語(都度実行されるたびに コンパイルが行われる) さらに実行直前にコンパイルされるということとは??? 【通常のPHP】 PHPの仮想実行マシ「ZendVM」で実行可能なOPCode列に変換、 ZendVM上で逐次実行。 【JITコンパイラ】 実行時によく利用されるコードの集まりを機械語に変換して直接CPUで実行。 仮想マシンではなくCPUで機械語を直接実行できるため 実行スピードを上げることができます。 ※Software Design 2021年5月号より
JITについて : どれくらい速いのか? https://www.php.net/releases/8.0/ja.phpより ←WEBアプリ
より具体的な コードの書き方を ご紹介
例1)コンストラクタでのプロパティのプロモーション PHP7 PHP8 https://www.php.net/releases/8.0/ja.php
Match式(の前にswitch式) 何が表示されるかしら?
Match式 PHP7 PHP8
目次 ✅ php8とは ✅ php8の特徴 / 代表的な導入項目 ✅ デメリット(注意点)👈 ✅
周辺への影響 ✅ まとめ
バージョンが変わる = 挙動もかわる
緩やかな比較の変更 何が表示されるかしら?
緩やかな比較の変更 イコールが2個は緩やかな比較。 【PHP7まで】 緩やかな比較の場合、型が異なる比較の場合 「暗黙的に型の変換」が行われた後比較される。 【PHP8】 こうした挙動を改善するために数値と文字列比較に 変更がされた。 「暗黙的に型の変換」されるが挙動が変わる。 ※イコール3個の厳密比較は変更なし。
目次 ✅ php8とは ✅ php8の特徴 / 代表的な導入項目 ✅ デメリット(注意点) ✅
周辺への影響👈 ✅ まとめ
周辺への影響 フレームワーク Laravel LTSの 6.19.0、8.3.0以降で対応済😊 CakePHP 3.x : 非対応🤢 4.x
: 対応済み😊 CodeIgniter LTS3系:非対応🤢 開発版4系 : 対応済😊 CMS wordpress 現状は非推奨?※1 ※1 https://column.prime-strategy.co.jp/archives/column_4242
バージョンアップする際は? 🔵 公式移行ガイド の 下位互換性のない変更点 を要チェック 🔵 PHPCompatibility の利用
目次 ✅ php8とは ✅ php8の特徴 / 代表的な導入項目 ✅ デメリット(注意点) ✅
周辺への影響 ✅ まとめ👈
まとめ ⭕ 短く記述できたり、速度が早くなったりと恩恵が沢山ある。 ⭕ ただし以前のバージョンと挙動が異なることがあるので注意 ⭕ フレームワークやCMSを利用する際は、そのサポート状況を把握す る。
おわり
参考 ・php8 rfc ・php8リリースのお知らせ(公式 ・PHP 7.4.x から PHP 8.0.x への移行(公式)
・PHP 8 で Web 以外の世界の扉を叩く shinjiigarashi → JITについて、なぜ導入したのか?の考察。