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
4k
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-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
5
810
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
3
1.9k
PHPコードの実行モデルを理解する / Understanding-the-PHP-Execution-Model
shin1x1
1
2.4k
制約の力 - 状態を限定する -
shin1x1
4
4.7k
Apple Silicon Mac 時代の PHP 開発環境構築 2021 / php-dev-env-on-m1-mac-era
shin1x1
2
4.6k
Docker イメージのマルチアーキテクチャビルド / docker-muti-arch-build
shin1x1
1
480
Domain modeling with PHP / domain-modeling-with-php-en
shin1x1
0
250
ドメインをモデリングしてPHPコードに落とし込む / domain-modeling-with-php8
shin1x1
14
7.2k
PHP 8 で作る JSON パーサ / php8-json-parser
shin1x1
1
3.8k
Other Decks in Technology
See All in Technology
ウェブアクセシビリティとは
lycorptech_jp
PRO
0
230
数百台のオンプレミスのサーバーをEKSに移行した話
yukiteraoka
0
590
Dapr For Java Developers SouJava 25
salaboy
1
130
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
ymae
1
180
OCI見積もり入門セミナー
oracle4engineer
PRO
0
100
スケールアップ企業のQA組織のバリューを最大限に引き出すための取り組み
tarappo
4
860
PHPでアクターモデルを活用したSagaパターンの実践法 / php-saga-pattern-with-actor-model
ytake
0
990
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.2k
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
420
PostgreSQL Unconference #52 pg_tde
nori_shinoda
0
180
ソフトウェア開発におけるインターフェイスという考え方 / PHPerKaigi 2025
k1low
9
3.9k
Symfony in 2025: Scaling to 0
fabpot
2
150
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
Typedesign – Prime Four
hannesfritz
41
2.6k
It's Worth the Effort
3n
184
28k
Fireside Chat
paigeccino
37
3.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.1k
Why Our Code Smells
bkeepers
PRO
336
57k
The Invisible Side of Design
smashingmag
299
50k
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