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 で mp3 プレイヤーを実装しよう
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
memory
PRO
April 11, 2026
Programming
350
0
Share
PHP で mp3 プレイヤーを実装しよう
PHP カンファレンス小田原 2026
memory
PRO
April 11, 2026
More Decks by memory
See All by memory
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
790
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
200
AI 時代だからこそ学ぶべき PHP の基礎
m3m0r7
PRO
7
2.3k
JVM の仕組みを理解して PHP で実装してみよう
m3m0r7
PRO
1
580
コードゴルファー道
m3m0r7
PRO
0
600
ChatGPT とつくる PHP で OS 実装
m3m0r7
PRO
3
510
事業観点から見る技術的負債の返済
m3m0r7
PRO
4
1.3k
PHP でアセンブリ言語のように書く技術
m3m0r7
PRO
1
270
PHP でアセンブリっぽく書く技術
m3m0r7
PRO
1
180
Other Decks in Programming
See All in Programming
Sans tests, vos agents ne sont pas fiables
nabondance
0
130
色即是空、空即是色、データサイエンス
kamoneggi
1
110
横断組織出身のQAEがインプロセスQAEでつまずいたこと・活かせたこと
ty89
0
110
Cloudflare で始める Data Platform
ta93abe
0
180
実践ハーネスエンジニアリング:ステアリングループを実例から読み解く / Practical Harness Engineering: Understanding Steering Loops Through Real-World Examples
nrslib
5
5.6k
Agentic Elixir
whatyouhide
0
450
SkillsをS3 Filesに置く時のあれこれ
watany
3
1.6k
「なんか〇〇ライブラリで脆弱性あるみたいなんだけど。。。」から始める脆弱性対応 / First Steps in Vulnerability Response
mackey0225
2
130
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
3.2k
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
620
AIを導入する前にやるべきこと
negima
2
360
Agent Skills を社内で育てる仕組み作り
jackchuka
1
2.1k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building AI with AI
inesmontani
PRO
1
1k
Skip the Path - Find Your Career Trail
mkilby
1
120
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
180
First, design no harm
axbom
PRO
2
1.2k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
360
The Curious Case for Waylosing
cassininazir
1
350
Bash Introduction
62gerente
615
210k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
54k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Claude Code のすすめ
schroneko
67
220k
Transcript
ΊΓʔ 1)1ͰNQϓϨΠϠʔΛ ࣮͠Α͏ 1)1ΧϯϑΝϨϯεখాݪ 1
ΊΓʔ NNS ιϑτΣΞΤϯδχΞ͔ΒΩϟϦΞ͕࢝ ·ΓɼελʔτΞοϓ্اۀͰ$50 ͱͯ͠׆ಈɻ ݱࡏελʔτΞοϓͰ$50Λ͍ͯ͠·͢ɻ 2 NFNPSZ NNS
3
Έͳ͞Μ͕1)1ͰNQϓϨΠϠʔΛ ࣮͢Δͱͨ͠Β 4
ԿΛࢥ͍ු͔·͔͢ʁ 5
ͬͺΓ)5.-+BWB4DSJQUͱ Ͳ͏Έ߹ΘͤΔ͔Ͱ͢ΑͶʁ 6
ͦΜͳͷΦϞϯφΠΑͶʙ 7
ͦΜͳΘ͚Ͱ༻ҙ͖ͯ͠·ͨ͠ 8
9 https://github.com/m3m0r7/php-mp3-player
ͱ͍͏͜ͱͰࠓ 10
1)1ΛͬͨωΠςΟϒΞϓϦͱͯ͠ NQϓϨΠϠʔΛ࣮͢ΔϋπʔΛ͓͠·͢ 11
1)1ΛͬͨωΠςΟϒΞϓϦͱͯ͠ NQϓϨΠϠʔΛ࣮͢ΔϋπʔΛ͓͠·͢ 12
NQϓϨΠϠʔͷ࡞Γํ 1)1Λ༻͍࣮ͨखॱ %&.0 ·ͱΊ 13 ͘͡
NQϓϨΠϠʔͷ࡞Γํ 14
࡞Γํछྨ͋Δ NQσίʔμʔ͔Βͷࣗ࡞ қߴ NQͷόΠφϦΛཧղͯ͠ɼஞ࣍ಡΜͰ͍͘ํ๏ طͷϥΠϒϥϦΛ༻͍Δ қத
طͷNQσίʔμʔΛ༻͍࣮͍ͯͯ͘͠ํ๏ 15 NQϓϨΠϠʔͷ࡞Γํ
࡞Γํछྨ͋Δ 16 NQϓϨΠϠʔͷ࡞Γํ σίʔμͷࣗ࡞ طϥΠϒϥϦΛ༻͍Δ ֶश NQͷߏΛཧղͰ͖Δ ϥΠϒϥϦͷ͍ํΛֶΔ ࣝ ֶͷ͕ࣝඞཁʹͳΔ
ʢࡾ֯ؔɼඍੵɼϑʔϦΤมͷࣝ ͳͲʣ ϥΠϒϥϦͷ"1*Λୟ͚ͩ͘ ߴԽ 1)1Ͱಈ͔͢Ҏ্ඞਢ طʹ͞Ε͍ͯΔ
NQͷߏ 17
*%W *%Wҙ 18 NQͷߏ
*%W *%Wҙ 19 NQͷߏ
ΦʔσΟΦϑϨʔϜ 20 NQͷߏ
ΦʔσΟΦϑϨʔϜ 21 NQͷߏ
ΦʔσΟΦϑϨʔϜ 22 NQͷߏ ྲྀੴʹɼ͜ΕΛ1)1Ͱ ಡΉͷΠΧπ͘ͳ͍ʂʁ
1)1ͰಡΉͷ͕ΠΧπ͍ཧ༝બ 23
ѹॖϨʔτ͕LCQTͩͱ͢Δͱ L)[ͷ߹ඵؒʹճલޙ ΦʔσΟΦϑϨʔϜΛಡΜͰͦΕΛ࠶ੜ͢ΔͨΊͷ σόΠεͱํʹ௨৴͢Δ༨ྗΛ͢ߴԽ͕ඞਢ 24 1)1ͰಡΉͷ͕ΠΧπ͍ཧ༝બ
ʜࢲ1)1Ͱ6CVOUVΛΤϛϡϨʔτ ֶͯ͠ͼ·ͨ͠ 25
ײతʹΘ͔Γ·͢ 26
͓ͪΌͱ࣮ͯ͢͠Δʹϋʔυϧ͕ߴ͍ 27
ΈΜͳ؆୯ʹͰ͖ͨ΄͏͕͍͍ΑͶʂʁ 28
ͱ͍͏Θ͚Ͱ 29
αΫοͱ࡞Εͨํָ͕͍͠ͱࢥ͏ͷͰ طϥΠϒϥϦΛ͏ํ๏Ͱղઆ͠·͢ 30
࡞Γํछྨ͋Δ NQσίʔμʔ͔Βͷࣗ࡞ қߴ NQͷόΠφϦΛཧղͯ͠ɼஞ࣍ಡΜͰ͍͘ํ๏ طͷϥΠϒϥϦΛ༻͍Δ қத
طͷNQσίʔμʔΛ༻͍࣮͍ͯͯ͘͠ํ๏ 31 NQϓϨΠϠʔͷ࡞Γํ
1)1Λ༻͍࣮ͨखॱ 32
''*Λ༻͍ͯ$ϥΠϒϥϦΛݺͼग़͢ 1)1͔Β''*ʢ'PSFJHO'VODUJPO*OUFSGBDFʣ͕ಋೖ ͞Εͨɻ 1)1Ϣʔβʔʹͱͬͯͷ֦ுɻʮ͜ΕͰωΠςΟϒΞ ϓϦ͕࡞ΕΔͧʜʂʯͱ $ϥΠϒϥϦΛݺͼग़ͤΕͳΜͰͰ͖Δɻ աڈʹ1)1Ͱ/'$ϦʔμʔΛ࡞ͬͨΓ͠·ͨ͠ɻ 33
1)1Λ༻͍࣮ͨखॱ
༻ҙ͢Δͷ 1)1 ''*Λ༗ޮʹͨ͠ͷ MJCNQH $Ͱॻ͔ΕͨNQσίʔυ༻ϥΠϒϥϦ
4%- 4JNQMF%JSFDU.FEJB-BZFS ωΠςΟϒΞϓϦέʔγϣϯͷ࣮Ͱը໘ʹϨϯμϦϯά͢Δͷʹ༻͍Δ 34 1)1Λ༻͍࣮ͨखॱ
''* 35 1)1Λ༻͍࣮ͨखॱ extern ͞ΕͨؔΛఆٛ ϚΫϩؔͳͲఆٛͰ͖ͳ͍ͷͰɼ ϔομʔϑΝΠϧΛͦͷ··షΓ͚Δ͚ͩͰ ಈ͔ͳ͍…͕΄ͱΜͲ.h ͷதΛషΔ͚ͩɻ
''* 36 1)1Λ༻͍࣮ͨखॱ ϥΠϒϥϦ·Ͱͷύε
''* 37 1)1Λ༻͍࣮ͨखॱ ϚδοΫϝιουͱͯ͠ ݺͼग़ͤΔΑ͏ʹͳΔ
ͱͯ؆୯Ͱ͢Ͷ ͜ΕΛMJCNQH 4%- ྆ํʹ͑0,Ͱ͢ 38
MJCNQH 39 1)1Λ༻͍࣮ͨखॱ ߏͷఆٛ mac ͷ߹ brew ͰೖΕͨ dylib ͷύε
FFI::cdef ͰߏମɾܕΛఆٛͯ͠ ͦΕΛؔʹ͢͜ͱ͕Ͱ͖Δ
4%- 40 1)1Λ༻͍࣮ͨखॱ mac ͷ߹ brew ͰೖΕͨ dylib ͷύε
4%- 4%-ͨͩΟϯυͷϨϯμϦϯάΛ͢Δ͚ͩͰͳ͘ɼΦʔσΟΦͳͲͷग़ྗ ѻ͏͜ͱ͕Ͱ͖·͢ɻϑΥϯτࢦఆͨ͠ͰϨϯμϦϯάͰ͖·͢ɻʢྫ/PUP TBOT+1Λ͍ͬͯ·͢ʣ ·ͨɼNQϓϨΠϠʔΛ࡞Δʹࡍͯ͠ॏཁͳʮ࠶ੜʯϘλϯͳͲΠϕϯτॲཧͱ͠ ͯϚεͷ࠲ඪʹԠͯ͡ൃՐͤ͞Δ͜ͱʹͳΓ·͢ɻ ͜ΕΒͷϘλϯγʔΫόʔͯ͢ํܗͷਤܗΛ͍͔ͭ͘ग़ྗ͍ͯ͠Δ͚ͩͰ͢ɻ
ʢ࠶ੜϘλϯएׯෳࡶͳͷͰ47(ϑΝΠϧΛಡΈࠐΊ0,ʣ 41 1)1Λ༻͍࣮ͨखॱ
4%- 42 1)1Λ༻͍࣮ͨखॱ ςΩετͷग़ྗ
4%- 43 1)1Λ༻͍࣮ͨखॱ mp3 ͔ΒΞʔτϫʔΫΛ நग़ͯ͠ग़ྗ
4%- 44 1)1Λ༻͍࣮ͨखॱ 3 छྨͷํܗʢγʔΫόʔͷഎ ܠɼਐḿήʔδɼϘλϯʣͰ ϨϯμϦϯά Ϙλϯʢํܗʣͷ࠲ඪΛཧղ͠ ͯɼγʔΫόʔɼϘϦϡʔϜΛૢ࡞ Ͱ͖ΔΑ͏ʹ͢Ε࣮Ͱ͖Δ
4%- 45 1)1Λ༻͍࣮ͨखॱ SVG + ํܗΛ༻͍ͯ ϨϯμϦϯά
%&.0 46
·ͱΊ 47
w1)1ͰNQϓϨΠϠʔΛ࡞Δͷͦ͜·Ͱ͘͠ͳ͍ ͦ͏''*͕͋ΕͶʂ wॻ͍͍ͯͳ͍Ͱ͕͢ɼಈըͷ࠶ੜͪΖΜͰ͖ΔͷͰϏ σΦϓϨΠϠʔͷ࣮ͪΖΜͰ͖·͢ɻ w͋ͳͨҰॹʹ1)1Ͱ͓Ζ͍ͷ࡞͍͖ͬͯ·͠ΐ͏ 48 ·ͱΊ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ 49