D
.BTBTIJ4IJOCBSB!TIJOY
!TIJOY
৽ݪʢ͠ΜΒʣխ࢘
େࡕͰ8FCγεςϜ։ൃٕज़αϙʔτΛߦ͍ͬͯ·͢
wCMPH
IUUQTCMPHTIJOYDPN
w1PEDBTU1)1ͷݱ
IUUQTQIQHFOCBTIJOYDPN
Slide 3
Slide 3 text
D
.BTBTIJ4IJOCBSB!TIJOY
͡Ίʹ
⚠ຊൃදͷ༰։ൃڥͰͷར༻Λఆ͍ͯ͠·͢
Πϯλʔωοτ্ʹެ։ͨ͠αʔόͰͷར༻ආ͚͍ͯͩ͘͞
👉આ໌ͷͨΊʹ؆ུԽ͍ͯ͠ΔՕॴ͕͋Γ·͢
ৄࡉൃදޙͷ࣭ࢀߟࢿྉΛࢀর͍ͯͩ͘͠͞
👉ײɺϑΟʔυόοΫ͓͍ͪͯ͠·͢ʂ
QIQFSLBJHJPSGPSUFFϑΟʔυόοΫϖʔδ
Slide 4
Slide 4 text
D
.BTBTIJ4IJOCBSB!TIJOY
"HFOEB
w 9EFCVH4UFQEFCVHHJOHͱ
w 9EFCVH4UFQEFCVHHJOHͷ༗ޮԽ
w 9EFCVHͱ*%&ͷ௨৴
w ઃఆͰͭ·ͮ͘ϙΠϯτ
Slide 5
Slide 5 text
D
.BTBTIJ4IJOCBSB!TIJOY
9EFCVH4UFQ%FCVHHJOH
Slide 6
Slide 6 text
D
.BTBTIJ4IJOCBSB!TIJOY
9EFCVH4UFQEFCVHHJOH
w 1)1֦ுϞδϡʔϧ9EFCVHͷσόοάػೳ
4UFQ%FCVHHJOH9EFCVHͰͷݺͼ໊
w *%&͔Βରతʹ1)1ίʔυͷ࣮ߦΛ੍ޚ
ϒϨʔΫϙΠϯτͰఀࢭɺεςοϓ࣮ߦɺมͳͲͷࢀর
w *%&ͱ9EFCVH͕௨৴࣮ͯ͠ݱ
Slide 7
Slide 7 text
D
.BTBTIJ4IJOCBSB!TIJOY
ίʔυఀࢭ
ελοΫτϨʔε
ม
σόοΨૢ࡞
1IQ4UPSNͷར༻ྫ
Slide 8
Slide 8 text
D
.BTBTIJ4IJOCBSB!TIJOY
4UFQEFCVHHJOHͷ༗ޮԽ
Slide 9
Slide 9 text
D
.BTBTIJ4IJOCBSB!TIJOY
4UFQEFCVHHJOHͷ༗ޮԽ
w YEFCVHNPEFEFCVH
w YEFCVHTUBSU@XJUI@SFRVFTU
ZFTશͯʹϦΫΤετͰσόοάηογϣϯ։࢝
USJHHFSʢσϑΥϧτʣ݅Λຬͨͨ͠߹ʹσόοάηογϣϯ։࢝
Slide 10
Slide 10 text
D
.BTBTIJ4IJOCBSB!TIJOY
YEFCVHTUBSU@XJUI@SFRVFTUUSJHHFSͷ߹
ϦΫΤετใͷԼهΩʔʹҙͷ͕͋Ε༗ޮԽ
ʢYEFCVHUSJHHFS@WBMVFઃఆ͕͋Εͦͷʣ
w @(&5@1045@$00,*&@&/7
w 9%(@53*((&3
w 9%(@4&44*0/ʢϑΥʔϧόοΫʣ
$ curl http://localhost:8080/demo?XDEBUG_TRIGGER=1
Slide 11
Slide 11 text
D
.BTBTIJ4IJOCBSB!TIJOY
ࢀߟϒϥβ֦ு9EFCVH)FMQFSCZ+FU#SBJOT
w 9%(@4&44*0/$PPLJFʹΛ
ઃఆͯ͠σόοάηογϣϯΛ༗ޮԽ
Slide 12
Slide 12 text
D
.BTBTIJ4IJOCBSB!TIJOY
9EFCVHͱ*%&ͷ௨৴
Slide 13
Slide 13 text
D
.BTBTIJ4IJOCBSB!TIJOY
௨৴֓ཁ
Slide 14
Slide 14 text
D
.BTBTIJ4IJOCBSB!TIJOY
௨৴֓ཁ
9EFCVH*%&Ͱଓ
*%&9EFCVHͰ௨৴
Slide 15
Slide 15 text
D
.BTBTIJ4IJOCBSB!TIJOY
9EFCVHઃఆଓઌઃఆ
w σόοάηογϣϯ9EFCVH͔Β*%&ʹଓʢେࣄʂʣ
5$1*1PS6/*9υϝΠϯιέοτͰଓ
w YEFCVHDMJFOU@IPTUଓઌ *%&
ϗετ
σϑΥϧτMPDBMIPTU
%PDLFSڥͰIPTUEPDLFSJOUFSOBM͕ར༻͞ΕΔ͜ͱ͕ଟ͍
w YEFCVHDMJFOU@QPSUଓઌ *%&
ϙʔτ
σϑΥϧτ
Slide 16
Slide 16 text
D
.BTBTIJ4IJOCBSB!TIJOY
1IQ4UPSNઃఆडઃఆ
w ͪड͚ϙʔτઃఆ
1)1%FCVH9EFCVH%FCVHQPSUͰYEFCVHDMJFOU@QPSUΛࢦఆ
w 4UBSU-JTUFOJOHGPS1)1%FCVH
$POOFDUJPOTΛΫϦοΫͯ͠Ϧεχϯά։࢝
Slide 17
Slide 17 text
D
.BTBTIJ4IJOCBSB!TIJOY
%#(Q%FCVHHFS1SPUPDPM
w 9EFCVHͱ*%&ͷ௨৴Ͱར༻͢Δϓϩτίϧ
w *%&ˠ9EFCVHςΩετίϚϯυ
FYTUFQ@JOUPJ///aʢJτϥϯβΫγϣϯ*%ɺOVMMऴʣ
w 9EFCVHˠ*%&9.-
FY///aYNMaʢ///ϝοηʔδOVMMͰ۠Γɺऴʣ
Slide 18
Slide 18 text
D
.BTBTIJ4IJOCBSB!TIJOY
FYJOJUσόοάηογϣϯ։࢝
w 9EFCVHηογϣϯ։࢝࣌ʹ*%&ૹ৴
w ͜ΕҎ߱ɺ*%&͔ΒίϚϯυૹ৴ɺ9EFCVH͕ฦ৴ʹͳΔ
Slide 19
Slide 19 text
D
.BTBTIJ4IJOCBSB!TIJOY
FYCSFBLQPJOU@TFUϒϨʔΫϙΠϯτઃఆ
w *%&ϒϨʔΫϙΠϯτઃఆΛૹ৴ʢϒϨʔΫϙΠϯτ͝ͱʹૹ৴ʣ
breakpoint_set -i 3 -t line -f
fi
le:///var/www/html/routes/web.php -n 13
w 9EFCVHϒϨʔΫϙΠϯτใΛอ࣋
ରίϚϯυ ରτϥϯβΫγϣϯ*%
Slide 20
Slide 20 text
D
.BTBTIJ4IJOCBSB!TIJOY
FYTUFQ@JOUPεςοϓΠϯ࣮ߦ
w *%&1)1ίʔυͷεςοϓΠϯ࣮ߦΛૹ৴
w 9EFCVH1)1ίʔυ࣮ߦɻ࣍ͷߦͰ࣮ߦఀࢭͯ͠ɺϨεϙϯεΛฦ͢ɻ
step_into -i 10
ίʔυ్தͰఀࢭ
࣍ʹ࣮ߦ͢Δߦʢ*%&͜ͷߦͰఀࢭঢ়ଶʣ
D
.BTBTIJ4IJOCBSB!TIJOY
ϩάͰ௨৴༰ΛݟΔ
w YEFCVHMPHύεΛࢦఆ͢Δͱ௨৴༰ΛϑΝΠϧʹه
YEFCVHMPHQBUIUPYEFCVHMPH
w YEFCVHMPH@MFWFMϩάϨϕϧ
*OGPSNBUJPOʢσϑΥϧτʣ
%FCVHϒϨʔΫϙΠϯτͷϚονϯάग़ྗʢ࠷ৄࡉʣ
w MPH@MFWFMϩά͕େʹͳΔͷͰɺ௨ৗҎԼʹ͓ͯ͘͠
[7] [Step Debug] <- feature_set -i 1 -n show_hidden -v 1
[7] [Step Debug] ->
Slide 23
Slide 23 text
D
.BTBTIJ4IJOCBSB!TIJOY
ϩά༰αϯϓϧ
[8] Log opened at 2026-03-21 01:47:40.687357
[8] [Config] INFO: No shared secret: Activating
[8] [Step Debug] INFO: Connecting to configured address/port: host.docker.internal:9003.
[8] [Step Debug] INFO: Connected to debugging client: host.docker.internal:9003 (through
xdebug.client_host/xdebug.client_port).
[8] [Step Debug] ->
(snip)
[8] [Step Debug] <- run -i 18
[8] [Step Debug] ->
Slide 24
Slide 24 text
D
.BTBTIJ4IJOCBSB!TIJOY
ઃఆτϥϒϧγϡʔςΟϯά
Slide 25
Slide 25 text
D
.BTBTIJ4IJOCBSB!TIJOY
ࠔͬͨΒ
ERR: Could not connect to debugging client. Tried:
host.docker.internal:9003
(through xdebug.client_host/xdebug.client_port).
w 9EFCVHɺ1IQ4UPSNυΩϡϝϯτΛݟΔ
IUUQTXXXKFUCSBJOTDPNIFMQQIQTUPSNUSPVCMFTIPPUJOHQIQEFCVHHJOHIUNM
IUUQTYEFCVHPSHEPDTTUFQ@EFCVH
w ௨৴ϩάΛݟΔ
Slide 26
Slide 26 text
D
.BTBTIJ4IJOCBSB!TIJOY
έʔε9EFCVH͕*%&ʹଓͰ͖ͳ͍
ERR: Could not connect to debugging client. Tried:
host.docker.internal:9003
(through xdebug.client_host/xdebug.client_port).
w EFCVHHJOHDMJFOU *%&
ʹଓͰ͖ͳ͍
w 9EFCVHଓઌਖ਼͍͔͠ʁ
w 1IQ4UPSNσόοάηογϣϯΛͪड͚͍ͯΔʁʢϚʔΫ༗ޮʁʣ
w 1IQ4UPSNͪड͚ϙʔτਖ਼͍͔͠
Slide 27
Slide 27 text
D
.BTBTIJ4IJOCBSB!TIJOY
έʔεϒϨʔΫϙΠϯτͰࢭ·Βͳ͍
WARN: Debug client detached: Cannot bind file
/var/www/html/public/index.php to the web server project.
w 1IQ4UPSN1BUINBQQJOHTઃఆͷෆඋ
w 1)14FSWFSTͰ1)1 9EFCVH
αʔόઃఆΛߦ͏
Slide 28
Slide 28 text
D
.BTBTIJ4IJOCBSB!TIJOY
έʔεϒϨʔΫϙΠϯτͰࢭ·Βͳ͍
@4&37&3<4&37&3@/".&>ͷΛઃఆ @4&37&3<4&37&3@1035>ͷΛઃఆ
αʔόʢ%PDLFSίϯςφʣͷύε
ϩʔΧϧͷύε
D
.BTBTIJ4IJOCBSB!TIJOY
·ͱΊ
w 9EFCVHͱ*%&ͷ௨৴Ͱσόοάૢ࡞Λ࣮ݱ
w ଓ9EFCVH*%&ɺૢ࡞*%&9EFCVH
w ௨৴༰ϩάͰ֬ೝͰ͖Δ
w ΈΛΔͷָ͍͠ʂ
ʢͪͳΈʹ9EFCVH͕෦Ͱ࣮ߦΛ੍ޚ͢ΔΈ໘ന͍ʂʣ
Slide 31
Slide 31 text
D
.BTBTIJ4IJOCBSB!TIJOY
ࢀর
w IUUQTYEFCVHPSHEPDTTUFQ@EFCVH
w IUUQTYEFCVHPSHEPDTECHQ
w IUUQTXXXKFUCSBJOTDPNIFMQQIQTUPSN
USPVCMFTIPPUJOHQIQEFCVHHJOHIUNM
Slide 32
Slide 32 text
D
.BTBTIJ4IJOCBSB!TIJOY
9EFCVH͕ίʔυ࣮ߦΛࢭΊΔΈ
w 9EFCVH4UFQEFCVHHJOH༗ޮ࣌ɺ1)1ίϯύΠϥ͕จ୯ҐͰ
;&/%@&[email protected]Φϖίʔυࠩࠐ
USBDFQSP
fi
MFͳͲಉ༷
w ΦϖίʔυϋϯυϥΛىʹఀࢭఆΛ࣮ߦ
ϒϨʔΫϙΠϯτɺεςοϓ ΠϯcΞτcΦʔόʔ
w ఀࢭͨ͠ΒɺϨεϙϯεΛฦͯ͠ɺίϚϯυड৴ͪʹͳΔʢSFDW
ʣ
w SVOTUFQ@JOUPͳͲͷ࣮ߦίϚϯυ͕དྷͨΒ࠶։
&[email protected]
"44*(/$7 J
JOU
&[email protected]
5.6-$7 J
JOU
"44*(/$7 K
5