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
PHP の現場から
Search
shin1x1
July 15, 2017
Technology
5
3.9k
PHP の現場から
2017/07/15 PHP カンファレンス関西 2017
https://2017.kphpug.jp/
shin1x1
July 15, 2017
Tweet
Share
More Decks by shin1x1
See All by shin1x1
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
3
1.7k
PHPコードの実行モデルを理解する / Understanding-the-PHP-Execution-Model
shin1x1
1
2k
制約の力 - 状態を限定する -
shin1x1
4
4.5k
Apple Silicon Mac 時代の PHP 開発環境構築 2021 / php-dev-env-on-m1-mac-era
shin1x1
2
4.6k
Docker イメージのマルチアーキテクチャビルド / docker-muti-arch-build
shin1x1
1
460
Domain modeling with PHP / domain-modeling-with-php-en
shin1x1
0
230
ドメインをモデリングしてPHPコードに落とし込む / domain-modeling-with-php8
shin1x1
14
7.1k
PHP 8 で作る JSON パーサ / php8-json-parser
shin1x1
1
3.7k
Kubernetes で構築する PHP 開発環境 / php-development-environment-on-kubernetes
shin1x1
3
4.9k
Other Decks in Technology
See All in Technology
Building Scalable Backend Services with Firebase
wisdommatt
0
110
データ基盤におけるIaCの重要性とその運用
mtpooh
1
210
SpiderPlus & Co. エンジニア向け会社紹介資料
spiderplus_cb
0
800
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
110
#TRG24 / David Cuartielles / Post Open Source
tarugoconf
0
550
AWSサービスアップデート 2024/12 Part3
nrinetcom
PRO
0
130
When Windows Meets Kubernetes…
pichuang
0
300
Amazon Q Developerで.NET Frameworkプロジェクトをモダナイズしてみた
kenichirokimura
1
190
コロプラのオンボーディングを採用から語りたい
colopl
5
920
ドメイン駆動設計の実践により事業の成長スピードと保守性を両立するショッピングクーポン
lycorptech_jp
PRO
6
710
20240513 - 框裡框外_文學院學生如何在AI世代安身立命 @ 淡江大學
dpys
0
650
KMP with Crashlytics
sansantech
PRO
0
230
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
244
12k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Adopting Sorbet at Scale
ufuk
74
9.2k
Thoughts on Productivity
jonyablonski
68
4.4k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
ɹ!shin1x1 2017//15 PHPΧϯϑΝϨϯεؔ 1)1ͷݱ͔Β
http://php-genba.shin1x1.com/
D .BTBTIJ4IJOCBSB!TIJOY ΞδΣϯμ wॆ࣮ͨ͠υΩϡϝϯτ wܕΛ໌ࣔͰ͖ΔεΫϦϓτݴޠ wΦϒδΣΫτࢦ։ൃݴޠ wεςʔτϨεͳϥϯλΠϜ w1)1ͷࢥ
ॆ࣮ͨ͠ υΩϡϝϯτ
http://php.net/
http://ja.phptherightway.com/
ܕΛ໌ࣔͰ͖Δ εΫϦϓτݴޠ
None
&MPRVFOU 3FQPTJUPSZ <?php function something(int $i): Foo {} something(1)->method(); ܕએݴ
&MPRVFOU 3FQPTJUPSZ <?php // PHP 7.1 function something(?int $i): ?Foo
{} // PHP 7.0 ҎԼ function something(int $i = null): Foo {} ܕએݴʢOVMMBCMFʣ
D .BTBTIJ4IJOCBSB!TIJOY ܕΛ໌ࣔ͢Δ wҙਤ͠ͳ͍ʢܕʣΛ͙ wίʔυͷҙਤΛ໌֬ʹʢ*%&ʹڭ͑Δʣ w҉తมΛ͙
D .BTBTIJ4IJOCBSB!TIJOY ܕͷݕࠪ w*%&ʢ1IQ4UPSN/FU#FBOTʣ w1IBOͳͲͷ੩తղੳπʔϧ wࣗಈςετ
ΦϒδΣΫτࢦ։ൃݴޠ
D .BTBTIJ4IJOCBSB!TIJOY ΦϒδΣΫτࢦ։ൃݴޠ wΫϥεɺܧঝɺΧϓηϧԽ wܕએݴ wΠϯλʔϑΣΠεɺநΫϥε wྫ֎ɺτϨΠτ
D .BTBTIJ4IJOCBSB!TIJOY ׆༻Ͱ͖Δڥ w044ͷϥΠϒϥϦɺϑϨʔϜϫʔΫ w%%%ͷྲྀߦʹΑΔ001ͷ࠶ධՁ wใɺϊϋͷެ։
D .BTBTIJ4IJOCBSB!TIJOY 1)1ݴޠػೳͰͷ׆༻ wෳࡶͳ࣮ΛӅͯ͠ɺ୯७ͳݴޠػೳͰར༻ w"SSBZ"DDFTT<>ʹΑΔཁૉΞΫηε w5SBWFSTBCMFGPSFBDIͰΠςϨʔτ
&MPRVFOU 3FQPTJUPSZ <?php class FooCollection implements \ArrayAccess { // (snip)
} $collection = new FooCollection(); $collection['key1'] = 'foo'; $value = $collection[‘key1']; "SSBZ"DDFTT
s &MPRVFOU 3FQPTJUPSZ <?php class BarCollection implements \IteratorAggregate { //
(snip) } $collection = new BarCollection(); foreach ($collection as $v) { echo $v; } 5SBWFSTBCMF *UFSBUPS"HHSFHBUF
εςʔτϨεͳ ϥϯλΠϜ
D .BTBTIJ4IJOCBSB!TIJOY 1)1ͷ࣮ߦNPE@QIQQIQGQN )551ϦΫΤετདྷΔ 1)1ίʔυΛίϯύΠϧʢPQDPEFੜʣ ࣮ߦڥΛॳظԽ PQDPEFΛ࣮ߦ )551Ϩεϙϯεฦ͢
D .BTBTIJ4IJOCBSB!TIJOY 1)1ͷ࣮ߦNPE@QIQQIQGQN )551ϦΫΤετདྷΔ 1)1ίʔυΛίϯύΠϧʢPQDPEFੜʣ ࣮ߦڥΛॳظԽ PQDPEFΛ࣮ߦ )551Ϩεϙϯεฦ͢ 01$BDIFͰΩϟογϡ
D .BTBTIJ4IJOCBSB!TIJOY 1)1ͷ࣮ߦNPE@QIQQIQGQN )551ϦΫΤετདྷΔ 1)1ίʔυΛίϯύΠϧʢPQDPEFੜʣ ࣮ߦڥΛॳظԽ PQDPEFΛ࣮ߦ )551Ϩεϙϯεฦ͢
D .BTBTIJ4IJOCBSB!TIJOY εςʔτϨεͳϥϯλΠϜ w୯ҰϦΫΤετͰด͍ͯ͡Δ wϦΫΤετຖʹϦηοτ wԿڞ༗͠ͳ͍ɺԿ͞ͳ͍
D .BTBTIJ4IJOCBSB!TIJOY ϝϦοτ wϦΫΤετͰඞཁͳϝϞϦ͔͠Θͳ͍ wϝϞϦϦʔΫɺ($͕ى͜Γʹ͍͘ w͏͔ͬΓσʔλΛڞ༗ͯ͠ͷࣄނ͕ແ͍ wΞϓϦέʔγϣϯ։ൃʹ͚ͩूதͰ͖Δ
D .BTBTIJ4IJOCBSB!TIJOY ࠓͷைྲྀͱͷੑ wΫϥυɺαʔόʔϨε w͏ͱ͖ʹੜɺऴΘͬͨΒഁغ w5IF5XFMWF'BDUPS"QQ
1)1ͷࢥ
1)1ࣃϒϥγ ͷΑ͏ͳͷͰ͢ ϥεϚεɾϥʔυϑ https://www.sitepoint.com/phps-creator-rasmus-lerdorf/
ʮ1)1ͱ͍͏ݴޠΛ࡞Ζ͏ʯ ͱߟ͑ͯ࡞ͬͨͷͰ͋Γ·ͤΜɻ ʮΛղܾ͢ΔͨΊͷπʔϧΛ࡞Ζ͏ʯ ͱࢥͬͯ࡞͍ͬͯ·ͨ͠ɻ ϥεϚεɾϥʔυϑ http://gihyo.jp/news/interview/2010/rasmus
1)1πʔϧ
୭͕͑Δπʔϧ
1)1ܨ͙ݴޠ
1)1ΤϯδχΞΑ ڳΛுΕ
D .BTBTIJ4IJOCBSB!TIJOY !TIJOY !TIJOY D .BTBTIJ4IJOCBSB!TIJOY