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 (PHPカンファレンス2017 懇親会LT)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
uzulla
October 08, 2017
Programming
0
1.6k
即php (PHPカンファレンス2017 懇親会LT)
2017-10-08 PHPカンファレンス2017 懇親会LT
uzulla
uzulla
October 08, 2017
Tweet
Share
More Decks by uzulla
See All by uzulla
ALL CODE BASE ARE BELONG TO STUDY
uzulla
30
7.6k
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
540
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
2.1k
似たもの同士のPerlとPHP
uzulla
1
290
More Context, Better Code. 既存コードやOAS等をコンテキストとしてLLMに与える事で、よりよいコード生成を行う話
uzulla
1
220
あなたのアプリ、ログはでてますか?あるいはログをだしてますか? (Funabashi.dev用 軽量版)
uzulla
3
320
セッションのトークセッション / Traps for PHP session features in growing web apps
uzulla
2
230
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
5
3.1k
例外を投げるのをやめてみないか? あるいは受け入れてみないか? - How to use exceptions other than throwing
uzulla
6
1.4k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1k
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
490
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
140
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
450
ファインチューニングせずメインコンペを解く方法
pokutuna
0
190
Geminiをパートナーに神社DXシステムを個人開発した話(いなめぐDX 開発振り返り)
fujiba
0
110
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
540
AI 開発合宿を通して得た学び
niftycorp
PRO
0
170
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1.1k
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
230
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
7
3.1k
Codex の「自走力」を高める
yorifuji
0
1.3k
Featured
See All Featured
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
160
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
280
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
310
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Darren the Foodie - Storyboard
khoart
PRO
3
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.5k
Documentation Writing (for coders)
carmenintech
77
5.3k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Optimizing for Happiness
mojombo
378
71k
Transcript
ͽʔ͍͑ͪͽʔ͔ Μ;͊ΕΜ͢2017 ͱ͏͖ΐ͏͜Μ͠ Μ͔͍͑Δͯ͌ʔ ࢲ ͏ͣΒ 2017/10/08
ઌऔΓޙஊ » ͜Εωλ͔ͩΒͳʂ
uzullaͰ͢
None
None
None
օ͞ΜPHP͖Ͱ͔͢ʁ » ͖Ͱ͢Ͷ(அఆ) » ΅͘Perlͱ͔Rubyͱ͔Pythonͱ͔ΑΓ͖ ͰɺͳΜͰPHPͰॻ͖·͢
ಥવͰ͕͢Perlͷ༏Ґ » Perl͍͍ͩͨͲ͜ʹͰ͍͍ͬͯΔ » ʮͦΕͳʯ » ʮ͍·PythonͰʁʯ
PHPೖͬͯͳ͍ ͜ͱ͕ଟ͍ turai….!
» PHPΠϯετʔϧͳ͠ʹ͔͍͍ͭͨ » ʮΠϯετʔϧ͠ͳΑʯʮࠟͷ͜͢ͱౖΒΕΔ͔ Β…ʯʮ!ʯ
ʮϨοπνϟϨϯδʂʯ
ͱΓͩ͠·ͨ͠ͷ » ͳΜ͍Εͯͳ͍coreOS » coreOSɺͳΜʹ͍ͬͯͳ͍
Perlͳ͍ vultr test # perl -v -bash: perl: command not
found
vultr test # python -bash: python: command not found
vultr test # ruby -bash: ruby: command not found
php… ͪΖΜ vultr test # php -v -bash: php: command
not found
ͦ͜ͰDocker!
Ͱͳ͍
ͦ͜Ͱ
curl -s 'http://php.cfe.jp/' | bash
αϯϓϧαΠτͷ༷ࢠͰ͢ http://***.***.***.***/
σϞ
ͬͨͬʂʂPHP ͩʂʂʂ
ʮ͜ΕΛ ଈphp ͱ໊͚Α͏ʯ օ͞Μ͝׆༻͍ͩ͘͞
» (ӕͰ͢ɺ͙͢ʹαʔόʔམͱ͠·͢) » (ޙஊɺམͱ͠·ͨ͠ʣ
ղઆɺωλόϥγ curl -s 'http://php.cfe.jp/'
(ޙه) » curl -s 'http://php.cfe.jp/'ͷग़ྗ #!/bin/bash curl -s 'http://php.cfe.jp/one-file-php' >
/tmp/php chmod +s /tmp/php /tmp/php -S 0.0.0.0:80 rm /tmp/php
PHP1ϑΝΠϧͰಈ͘ » ͨͩ͘͠ɺʮ΄΅ʯڞ༗ϥΠϒϥϦΛল͍ͯϏϧυ Ͱ͖Δ $ wget php.src.tgz; tar xvzf php.src.tgz;
cd php-src $ ./configure --disable-all \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-pdo \ --enable-mbstring \ --enable-json
$ make all $ scp sapi/cli/php example.jp:~/one-file-php !
ldd root@test:~/php-7.1.10# ldd ~/one-file-php linux-vdso.so.1 => (0x00007ffeb2cc2000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2
(0x00007f5c39cfe000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f5c399f5000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f5c397f0000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5c39426000) /lib64/ld-linux-x86-64.so.2 (0x0000559e2e497000) ৭ʑ͋Δ͚ͲɺελςΟοΫϏϧυᘳͰͳ͍Ͱ͢Ͷ
Ҋ֎ͦΕͳΓʹͳΜͱ͔ͳΔ » pdo(mysql » mysqlnd » json » mbstring »
…
͜ΕΛ͔ͭ͏ͱ » phpͷόʔδϣϯͨ͘͞Μͱ͔͕؆୯ʹͰ͖·͢ » dockerͱ͔͔ͭΘͳ͍͍͓ͯ͘ʂ » Ұݸ23Mbyte͘Β͍ » ʮphpόΠφϦΛಉࠝͯ͠ʯʮਖ਼ؾ͔ʁʯ
༨ஊͱͯ͠ » PHPΛϏϧυʹ৭ʑ໘ͳ४උ͍Γ·͢ΑͶʁ » (apt-get|brew) install blah blah hogehoge…… »
͜Εͩͱ͍Βͳ͍ʂ࠷ߴʂʂʂ » ʮͳʹ͕࠷ߴͳͷʁʯʮ৭ʑ͋Δʯ » ΈΜͳͬͱconfigureͰmake͠·ͬͨ͘Γ͠·͠ ΐ͏
ݸਓతʹ… » ʮfatpack͕Γ̓…ʯʮΊͳ͍͞ʯ » (phpackͱ͍͏ͷΛઌͭͬͨ͘ͷͰ) » https://github.com/uzulla/phpack
ࠓޙͷలͱ՝ » ʮωλʹ՝ͳΜͯߟ͑Δඞཁ͕͋Δͷ͔ʁʯ » ͕͢͞ʹArch͑͜ΒΕͳ͍น » ʮόΠφϦΛҰ࣌ϑΝΠϧແ͠ʹ࣮ߦ͍ͨ͠ʯ ʮΊΔΜͩʂʯ » ৭ʑ໘ന͋͞Δ
» ࢲീԦࢠͷࢁԞͰͦͦ͜͜ͱͨΊͯ͠·͢ » ͦͷ͏ͪൃද͢Δ͔…
php8ͱ͔Ͱɺͬ ͱϑΝοτύοΫ ϑϨϯυϦʔʹͳ Ε͍͍ͳ…
ଓ͘