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
polidog
PRO
September 14, 2019
Technology
0
660
はじめてのモダンPHP
polidog
PRO
September 14, 2019
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社を作った理由(再)
polidog
PRO
0
90
React Server ComponentsでAPI不要の開発体験
polidog
PRO
1
410
小さな開発会社が受託開発に力を入れる理由
polidog
PRO
0
91
小さな開発会社を作った理由
polidog
PRO
1
3.1k
小さな開発会社がWebサービスを作る理由
polidog
PRO
1
690
トランザクションスクリプトは何がダメなのか?
polidog
PRO
2
3.7k
React初心者がHooksを理解するためにコードを読んでみた
polidog
PRO
0
550
object-mapperを作ってる話
polidog
PRO
0
350
2020年から始めるSymfonyフレームワーク
polidog
PRO
2
1.3k
Other Decks in Technology
See All in Technology
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.7k
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
180
Agile PBL at New Grads Trainings
kawaguti
PRO
1
430
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
200
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
230
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
150
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
20250913_JAWS_sysad_kobe
takuyay0ne
2
220
2025年夏 コーディングエージェントを統べる者
nwiizo
0
170
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
110
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
830
Rustから学ぶ 非同期処理の仕組み
skanehira
1
140
Featured
See All Featured
Balancing Empowerment & Direction
lara
3
620
Automating Front-end Workflow
addyosmani
1370
200k
Typedesign – Prime Four
hannesfritz
42
2.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Into the Great Unknown - MozCon
thekraken
40
2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Rails Girls Zürich Keynote
gr2m
95
14k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Transcript
͡ΊͯͷϞμϯPHP Shizuoka.php #1 2019/09/14 @polidog
ࣗݾհ • @polidog • ౦ژࡏॅɺग़ਗ਼ਫ۠ • ύʔςΟʔϋʔυגࣜձࣾ औకɾϓϩάϥϚ • ͖ͳϑϨʔϜϫʔΫSymfony
• ࠷͍͍ۙͨϑϨʔϜϫʔΫBEAR Sunday • Vueͪΐ͍ͪΐ͍ॻ͍ͯ·͢
ϞμϯPHP?
None
http:// ja.phptherightway.com/
PHP The Right Way • ؾܰʹಡΊΔ(?)ΫΠοΫϦϑΝϨϯε • ϕετϓϥΫςΟε • ֤ݴޠʹ༁͞Ε͍ͯΔ(ͪΖΜຊޠ͋
Δ) • ϞμϯͷجૅͱͳΔ͜ͱ͕ࡌ͍ͬͯΔ
18ݸͷϓϥΫςΟε • ͡Ίʹ • ίʔσΟϯάελΠϧ • ݴޠ༷ͷϙΠϯτ • ґଘؔͷཧ •
ίʔσΟϯάʹؔ͢Δश׳ • ґଘੑೖ • σʔλϕʔε • ςϯϓϨʔτ • Τϥʔͱྫ֎ॲཧ • ηΩϡϦςΟ • ςετ • ֤छαʔόͷσϓϩΠ • ԾԽ • Ωϟογϡ • Documenting your CodeʢPHPDocʣ • ใݯ • ίϛϡχςΟ
ίʔσΟϯάελΠϧ
PSR1,2,4 • PSR1جຊίʔσΟϯάن • PSR2ίʔσΟϯάελΠϧΨΠυ • PSR4ΦʔτϩʔσΟϯάελϯμʔυ • ৄ͍͜͠ͱ͜ͷهࣄΛࢀর https://qiita.com/tadsan/items/
942a381e952e12a8fa5a
phpcs(PHP CodeSniffer) • ίʔυ͕४ڌ͍ͯ͠Δ͔νΣοΫͰ͖Δ • PHPStormvscodeͱ࿈ܞͰ͖Δ https://qiita.com/suin/items/ 8f00ccd58f0464fb9791 • phpcbfΛͬͯίʔυΛमਖ਼
php-cs-fixer • PSR1,2, SymfonyίʔσΟϯάنʹԊͬͨܗʹ मਖ਼ͯ͘͠ΕΔ • @PSR1,@PSR2,@SymfonyͳͲͷϧʔϧηοτ https://github.com/FriendsOfPHP/PHP-CS- Fixer/blob/ 681806863baec9d874dae95dd0f9eb3db44e
9b90/src/RuleSet.php
ґଘؔͷཧ
Comopser • npmbundlerΈ͍ͨͳͷ • composer.jsonʹґଘؔΛهड़͢Δ • PEAR͏5Ҏ্͍ͬͯͳ͍ • ຊ͔Βͩͱ͍ https://qiita.com/keitakn/items/
37f0fac49442b72c403e
None
Packagist • https://packagist.org/ • PHPͷύοέʔδΛ୳͢ҝͷαΠτ
None
ύοέʔδͷߋ৽ʹ͍ͭͯ • libraries.ioΛ͏ https://libraries.io/ • ηΩϡϦςΟνΣοΫSecurity Advisories CheckerΛ͏ https://security.symfony.com/
ґଘੑೖ
ґଘੑೖ • ӳޠͩͱDIͱ͔Dependency Injectionͱ͔ݴΘΕΔͭ • ࠷ۙͷϑϨʔϜϫʔΫʹDI͕͍͍ͩͨ༻ҙ͞Ε͍ͯΔ • ͍͠ͷͰଞͷDIͷઆ໌ΛಡΉ͖ https://polidog.jp/2019/06/08/di/
https://qiita.com/ritukiii/items/ de30b2d944109521298fɹ
ςετ
PHPUnitͰϢχοτςετΛॻ͘ • ϢχοτςετΫϥεϝιου͕ظ௨Γʹಈ͍͍ͯ Δ͔Λ։ൃதʹ͔֬ΊΔɻ • ςετํ๏ೋ௨Γ • ೖग़ྗͷظΛςετ͢Δ • ৼΔ͍Λ͔֬ΊΔͨΊͷςετ
• ςετͷจԽ͕ͳ͍ͷͳΒϢχοτςετΛ·ͣॻ͍ ͍ͯ͘ࣄ͕ॏཁ
Prophecy • ϞοΫΦϒδΣΫτϑϨʔϜϫʔΫ • εύΠํࣜͰςετͰ͖Δ • ࢀߟ https://qiita.com/Hiraku/items/ 326b58c586a134d2ea74
None
None
σϓϩΠ
DeployerΛ͏ • PHPͷσϓϩΠπʔϧ • σϓϩΠ༻ͷλεΫΛఆٛ͢Δ • ίϚϯυΛ࣮ߦ͢Δ͚ͩͰσϓϩΠͰ͖Δ • ֤छϑϨʔϜϫʔΫ༻ͷϨγϐ͕༻ҙ͞Ε͍ͯΔ •
جຊతͳ͍ํ https://www.tam-tam.co.jp/tipsnote/tool/post17066.html
CIΛͬͨσϓϩΠ • CIΛͬͯdeployerΛಈ͔͢ • ྫ͑CircleCIΛ͏߹ https://tech.quartetcom.co.jp/2017/01/04/ deployer-on-circleci/
ฐࣾͷσϓϩΠϑϩʔ PRͷ࡞ ϚʔδϘλϯԡ͢ deployer slackʹ௨
None
࠷ޙʹ
ϞμϯPHPͰ։ൃ͢Δҙຯ
࿑ಇ࣌ؒΛݮΒͨ͢Ί
ɹ?>