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
2.2k
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
410
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
920
今年書いた技術記事で伸びたやつの自慢と自分の中では力作なのにさっぱり伸びなかったやつの供養 / My Tech Articles 2024
ttskch
2
160
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
47
41k
データベース/SQL超入門!完全初心者向けに世界一分かりやすく解説します
ttskch
1
6.8k
Symfony UX Autocompleteとかいう 顧客が本当に必要だったもの
ttskch
0
2.1k
就活生あるいは新人エンジニアさんへのお節介なアドバイス
ttskch
0
1.6k
symfony/pantherでWordleを解いてみた
ttskch
0
370
ついに、Webアプリでの帳票印刷のベストプラクティスを編み出しました💡
ttskch
16
20k
Other Decks in Programming
See All in Programming
アーキテクチャと考える迷子にならない開発者テスト
irof
7
2.5k
What’s Fair is FAIR: A Decentralised Future for WordPress Distribution
rmccue
0
160
Core MIDI を勉強して作曲用の電子ピアノ作ってみた!
hypebeans
0
110
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
450
What's New in Web AI?
christianliebel
PRO
0
120
Kotlinで実装するCPU/GPU 「協調的」パフォーマンス管理
matuyuhi
0
380
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
0
1k
OSS開発者の憂鬱
yusukebe
11
3.7k
高単価案件で働くための心構え
nullnull
0
130
Nitro v3
kazupon
2
280
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
510
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
190
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
GitHub's CSS Performance
jonrohan
1032
470k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Docker and Python
trallard
46
3.6k
Context Engineering - Making Every Token Count
addyosmani
9
380
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
Agile that works and the tools we love
rasmusluckow
331
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
What's in a price? How to price your products and services
michaelherold
246
12k
Designing for humans not robots
tammielis
254
26k
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!ʗ