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
phpenvやめました🤦♂️
Search
Takashi Kanemoto
July 28, 2021
Programming
0
1.6k
phpenvやめました🤦♂️
「PHPerの今とその先を語り合うフォーラム2021」PHP TechCafeのLT資料です。
https://rakus.connpass.com/event/217189/
Takashi Kanemoto
July 28, 2021
Tweet
Share
More Decks by Takashi Kanemoto
See All by Takashi Kanemoto
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
280
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
460
今年書いた技術記事で伸びたやつの自慢と自分の中では力作なのにさっぱり伸びなかったやつの供養 / My Tech Articles 2024
ttskch
2
88
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
47
33k
データベース/SQL超入門!完全初心者向けに世界一分かりやすく解説します
ttskch
1
5k
Symfony UX Autocompleteとかいう 顧客が本当に必要だったもの
ttskch
0
1.9k
就活生あるいは新人エンジニアさんへのお節介なアドバイス
ttskch
0
1.5k
symfony/pantherでWordleを解いてみた
ttskch
0
290
ついに、Webアプリでの帳票印刷のベストプラクティスを編み出しました💡
ttskch
16
19k
Other Decks in Programming
See All in Programming
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
Honoとフロントエンドの 型安全性について
yodaka
6
890
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
1
180
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
840
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
370
Writing documentation can be fun with plugin system
okuramasafumi
0
120
もう僕は OpenAPI を書きたくない
sgash708
4
1.4k
昭和の職場からアジャイルの世界へ
kumagoro95
1
370
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
150
Unity Android XR入門
sakutama_11
0
150
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
6
4k
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
Practical Orchestrator
shlominoach
186
10k
Site-Speed That Sticks
csswizardry
4
380
Done Done
chrislema
182
16k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Thoughts on Productivity
jonyablonski
69
4.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Being A Developer After 40
akosma
89
590k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
A designer walks into a library…
pauljervisheath
205
24k
Transcript
/16 2021/07/28 #PHPTechCafe @ttskch 1 phpenvΊ·ͨ͠🤦
/16 • ϦεςΟϯάࠂͷձࣾͰWebαʔϏεΛ࡞ͬͯ·ͨ͠ • CTOͱͯ͠ࡏ੶ͨ͠8ؒͰɺࣾһ2໊ˠ60໊ɺ ച্ن5000ສԁˠ27ԯԁʹ·Ͱ 💪 💪 💪
• ຊΛॻ͍ͨΓSchooͰߨٛͨ͠Γͱ͍ͬͨ׆ಈ 2 ͖ͨͭͪ ʙ2020/03 (ג)ΧϧςοτίϛϡχέʔγϣϯζCTO 📝 blog.ttskch.com/thank-you-quartet-communications @ttskch
/16 • डୗ։ൃͱࣾ֎CTO/ٕज़ސۀத৺Ͱ׆ಈͯ͠·͢ • Symfony͕େ͖Ͱ͢ ✨ • ڈΞυϕϯτΧϨϯμʔΛ1ਓͰ15ॻ͍ͨΓ 10ສจࣈͷిࢠॻ੶Λແྉެ։ͨ͠Γ͠·ͨ͠💪💪💪
3 ͖ͨͭͪ 2020/04ʙ ϑϦʔϥϯεWebΤϯδχΞ 👨💻 kannade.jp @ttskch
/16 2021/07/28 #PHPTechCafe @ttskch 4 phpenvΊ·ͨ͠🤦
/28 $ phpenv install 8.0.0 [Success]: Built 8.0.0 successfully. 5
phpenvͱ
/28 $ PKG_CONFIG_PATH="/usr/local/opt/krb5/lib/pkgconfig:/usr/local/ opt/openssl/lib/pkgconfig:/usr/local/opt/icu4c/lib/pkgconfig:/usr/ local/opt/libedit/lib/pkgconfig:/usr/local/opt/libxml2/lib/ pkgconfig" \ PHP_BUILD_CONFIGURE_OPTS="--with-zlib-dir=/usr/local/opt/zlib -- with-bz2=/usr/local/opt/bzip2
--with-iconv=/usr/local/opt/libiconv --with-curl=/usr/local/opt/curl --with-libedit=/usr/local/opt/ libedit --with-jpeg-dir=/usr/local/opt/libjpeg —with-png-dir=/usr/ local/opt/libpng --with-external-gd=/usr/local/opt/gd" \ phpenv install 8.0.0 [Success]: Built 8.0.0 successfully. 6 ࠷ۙͷMacʹ͓͚Δݱ࣮ ࢀߟɿhttps://blog.ttskch.com/mac-phpenv-php-build/
/16 7 ৄͪ͘͜͠Β https://speakerdeck.com/ttskch/phpenv-on-mac-nan-sisugiwarota
/xxx 8 ͰɺͳΜ͔Μ͋ͬͯ
/16 9 ݁ہphpenvΊ·ͨ͠ https://twitter.com/ttskch/status/1406141047063801856
/16 • PHPͷϏϧυ৭ΜͳϛυϧΣΞʹґଘ͍ͯͯ͠ɺԿͯ͠ͳ͍ͷʹյΕΔ ͜ͱ͕Α͋͘Δ্ʹτϥϒϧγϡʔτ͕େม͗͢Δ • ϏϧυΤϥʔΛղফ͠Α͏ͱඞਢͰάάͬͯͨΒ࠷ऴతʹ Homebrew/homebrew-coreͷIssueͰ͢ͰʹٞࡁΈͩͬͨͷΛݟ͚ͭͯɺ ࣗҰମԿΛ࠶ൃ໌͍ͯ͠ΔΜͩΖ͏͔ͱ͍͏ؾ࣋ͪʹͳΔ
• Homebrewʹର͢ΔԼهͷΞυόϯςʔδଞͷखஈͰेସͰ͖Δʢޙड़ʣ 1. ύονόʔδϣϯ୯ҐͰόʔδϣϯࢦఆͰ͖Δ 2. .php-version ͰσΟϨΫτϦ͝ͱʹPHPͷόʔδϣϯΛࢦఆͰ͖Δ 10 Ίͨཧ༝
/16 • ࣮ࡍͷͱ͜Ζɺύονόʔδϣϯ·Ͱࢦఆ͍ͨ͠έʔεͳΜͯ΄΅ͳ͍🤦 • ͋ͬͨ͠Βͦͷ͚࣌ͩDocker͍͍͔͑ͳ 11 1. ύονόʔδϣϯ୯ҐͰόʔδϣϯࢦఆͰ͖Δʁ
/16 12 2. σΟϨΫτϦ͝ͱʹPHPͷόʔδϣϯΛࢦఆͰ͖Δʁ • direnvͱ͍͏πʔϧͰ΄΅ಉ͜͡ͱͰ͖Δ👌 • .envrc ͱ͍͏ϑΝΠϧʹڥมΛఆ͓ٛͯ͘͠ͱɺͦͷσΟϨΫτϦʹ Ҡಈͨ͠ͱ͖ʹࣗಈͰڥมΛಡΈࠐΜͰ͘ΕΔπʔϧ
• https://github.com/direnv/direnv
/28 # Πϯετʔϧ $ brew install direnvʊ $ echo 'eval
"$(direnv hook zsh)"' >> ~/.zshrcʊ # σΟϨΫτϦ͝ͱʹPHPͷύεΛࢦఆ $ cd /path/to/projectʊ $ echo 'export PATH="/usr/local/opt/
[email protected]
/bin:$PATH"' > .envrcʊ $ direnv allow . 13 direnv
/16 14 ͪͳΈʹextension • PECLͰΠϯετʔϧͯ͠ php.ini ʹهɺͰ؆୯ʹՃͰ͖Δ # PECLͷ࣮ߦʹඞཁͳϛυϧΣΞΛΠϯετʔϧ $
brew install pkg-config zlibʊ # Πϯετʔϧͯ͠php.iniʹه $ pecl install apcuʊ $ echo 'extension=apcu.so' >> /usr/local/etc/php/7.4/php.ini ࢀߟɿhttps://grrr.tech/posts/installing-homebrew-php-extensions-with-pecl/
/16 • phpenv on Mac͗͢͠Δ • Homebrewʹର͢ΔΞυόϯςʔδผͷπʔϧͳͲͰସՄೳ • ͜Ε͔ΒϏϧυͷͭΒΈΛΘΓʹͬͯ͘Ε͍ͯΔ͜ͱʹײँͭͭ͠ HomebrewͷPHPΛ͍͖ͬͯ·͢😇
15 ·ͱΊ
/16 16 @ttskch ʘThanks!ʗ