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
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
似たもの同士のPerlとPHP
uzulla
1
140
More Context, Better Code. 既存コードやOAS等をコンテキストとしてLLMに与える事で、よりよいコード生成を行う話
uzulla
1
110
あなたのアプリ、ログはでてますか?あるいはログをだしてますか? (Funabashi.dev用 軽量版)
uzulla
3
180
セッションのトークセッション / Traps for PHP session features in growing web apps
uzulla
2
130
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
5
2.1k
例外を投げるのをやめてみないか? あるいは受け入れてみないか? - How to use exceptions other than throwing
uzulla
4
960
PHPerが ISUCONでやるべき事
uzulla
1
1k
開発生産性は上がらない - N Ways to Reduce Development Productivity
uzulla
1
250
test is not a job
uzulla
1
500
Other Decks in Programming
See All in Programming
Beyond ORM
77web
10
1.4k
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
760
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
330
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
210
Findy Team+ Awardを受賞したかった!ベストプラクティス応募内容をふりかえり、開発生産性向上もふりかえる / Findy Team Plus Award BestPractice and DPE Retrospective 2024
honyanya
0
120
CloudflareStack でRAGに入門
asahiiwm
0
130
선언형 UI에서의 상태관리
l2hyunwoo
0
230
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
6
1.2k
fs2-io を試してたらバグを見つけて直した話
chencmd
0
260
nekko cloudにおけるProxmox VE利用事例
irumaru
3
480
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
250
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
5
1.2k
Featured
See All Featured
A better future with KSS
kneath
238
17k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Fireside Chat
paigeccino
34
3.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
4 Signs Your Business is Dying
shpigford
182
21k
Writing Fast Ruby
sferik
628
61k
Mobile First: as difficult as doing things right
swwweet
222
9k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Visualization
eitanlees
146
15k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Documentation Writing (for coders)
carmenintech
67
4.5k
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ͱ͔Ͱɺͬ ͱϑΝοτύοΫ ϑϨϯυϦʔʹͳ Ε͍͍ͳ…
ଓ͘