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.8k
PHPコードの実行モデルを理解する / Understanding-the-PHP-Execution-Model
shin1x1
1
2.1k
制約の力 - 状態を限定する -
shin1x1
4
4.6k
Apple Silicon Mac 時代の PHP 開発環境構築 2021 / php-dev-env-on-m1-mac-era
shin1x1
2
4.6k
Docker イメージのマルチアーキテクチャビルド / docker-muti-arch-build
shin1x1
1
470
Domain modeling with PHP / domain-modeling-with-php-en
shin1x1
0
240
ドメインをモデリングして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
デスクトップだけじゃないUbuntu
mtyshibata
0
770
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
190
「正しく」失敗できる チームの作り方 〜リアルな事例から紐解く失敗を恐れない組織とは〜 / A team that can fail correctly
i35_267
4
780
Raycast Favorites × Script Command で実現するお手軽情報チェック
smasato
1
140
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
4.5k
AIエージェント元年@日本生成AIユーザ会
shukob
1
150
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
130
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
200
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
3.1k
Active Directory攻防
cryptopeg
PRO
8
5.3k
Reading Code Is Harder Than Writing It
trishagee
2
120
白金鉱業Meetup Vol.17_あるデータサイエンティストのデータマネジメントとの向き合い方
brainpadpr
7
1k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Visualization
eitanlees
146
15k
The Invisible Side of Design
smashingmag
299
50k
GraphQLとの向き合い方2022年版
quramy
44
14k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
A Tale of Four Properties
chriscoyier
158
23k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Thoughts on Productivity
jonyablonski
69
4.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
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