æåã®èšäºã§ã¯ãxdebugã®ã€ã³ã¹ããŒã«ããã³æ§ææ¹æ³ã«ã€ããŠèª¬æããvar_dumpïŒïŒé¢æ°ã®åºåã®æ¹åããšã©ãŒã¡ãã»ãŒãžã®åä¿¡æã®åŒã³åºãã¹ã¿ãã¯ã®ãã¬ãŒã¹ãªã©ãæãåçŽãªæ©èœã®ããã€ãã«ã€ããŠèª¬æããŸããã 2çªç®ã®éšåã§ã¯ãxdebugã®å¯èœæ§ããã¬ãŒã¹ãšããŠèª¿ã¹ãŸããã ãã¬ãŒã¹ã«ã¯ãããã°ã©ã å ã®é¢æ°ãšã¡ãœããã®ãã¹ãŠã®åŒã³åºããéå§æéããªãã·ã§ã³ã§ã¡ã¢ãªãµã€ãºãéä¿¡ããã³è¿ããããã©ã¡ãŒã¿ãŒãå«ãŸããŸãã ãã¬ãŒã¹ãã°ã¯ãè€éãªããã°ã©ã ã®å®è¡æ¹æ³ãç解ããã®ã«åœ¹ç«ã¡ãŸãã ããã°ã©ã å ã«ãããã°ã³ãŒããåã蟌ã代ããã«ãå¿ èŠãªå ŽæãŸã§ãã¬ãŒã¹ããªã³ãŸãã¯ãªãã«ããŠãããgrepãå®éã«äœæããPHPããã°ã©ã ãªã©ã®ãŠãŒãã£ãªãã£ã䜿çšããŠãã°ãã¡ã€ã«ãåæããŸãã
ãã®èšäºã§ã¯ããããã¡ã€ãªã³ã°ãæ€èšããŸãã ãããã¡ã€ãªã³ã°ã¯äžèŠãã¬ãŒã¹ã®ããã«èŠããŸãã ãããã¡ã€ãªã³ã°ãã°ã¯ã人ã察象ãšãããã®ã§ã¯ãªããããã°ã©ã ã®å®è¡ãããŒãèŠèŠåãããã®ã§ã¯ãããŸããããå®è¡äžã®ããã°ã©ã ã®çµ±èšåæã®ããã®ããŒã¿ãæäŸããŸãã
ãããã¡ã€ãªã³ã°ãã°ã®äœæ
以äžã¯ãxdebugã«ãã£ãŠäœæããããããã¡ã€ã«ãã°ããã®çãæç²ã§ãã
fl = phpïŒå éš
fn = php ::å®çŸ©
106 3
fl = CïŒ\ www \ drupal \ include \ bootstrap.inc
fn = require_once :: CïŒ\ www \ drupal \ include \ bootstrap.inc
1,648
cfn = php ::å®çŸ©
åŒã³åºã= 1 0 0
13 6
cfn = php ::å®çŸ©
åŒã³åºã= 1 0 0
18 4
cfn = php ::å®çŸ©
åŒã³åºã= 1 0 0
23 2
ã芧ã®ãšããããããã¡ã€ã«ã®ãã°ãçŽæ¥èªã¿åãããšã¯ã§ããŸããã åä¿¡ããããŒã¿ã®èŠèŠåãšåæã®ããã«è¿œå ã®ããŒã«ã䜿çšããŸãã ãããã£ãŠããããã¡ã€ãªã³ã°ã¯ããã®è¡ãŸãã¯ãã®è¡ãèµ·åãããåæ°ãšãèµ·åã«ããã£ãæéã瀺ããŸãã
ãããã¡ã€ãªã³ã°ãã°ãäœæãããšãåè¡ã®é²è¡ç¶æ³ãèšè¿°ããå¿ èŠãããããããã¬ãŒã¹ãã°ã®äœæãšåæ§ã«ãããã©ãŒãã³ã¹ã«å€§ãã圱é¿ããŸãã ãããã£ãŠããã¬ãŒã¹ã®å Žåãšåæ§ã«ãããã«ãµãŒããŒã§ãããã¡ã€ãªã³ã°ãéå§ããªãã§ãã ãã...ãã ãããããã¡ã€ãªã³ã°ã皌åäžã®ã·ã¹ãã ã§å®è¡ããå¿ èŠãããå ŽåããããŸãã ãã®å ŽåãããŒããŒããªããã£ãã€ã¶ãŒããã£ãã·ã¥ãªã©ã®ä»ã®Zendæ¡åŒµæ©èœãšåæã«xdebugãå®è¡ããããã«æ³šæããŠãã ããã
xdebugããããã¡ã€ã«ãã°ã®èšé²ãéå§ããã«ã¯ãè¿œå
xdebug.profiler_enable =ãªã³
ã³ãã³ããå®è¡ããŠãèµ·åäžã«ãããã¡ã€ãªã³ã°ãéå§ã§ããªãããšã«æ³šæããŠãã ããã
ãããã¡ã€ãªã³ã°ãã°ã¯ã¢ãã©ã€ã¶ãŒããã°ã©ã ã«ããèªã¿åããç®çãšããŠããããããã¬ãŒã¹ãã°ã®å Žåã®ããã«è¿œå æ å ±ã衚瀺ã§ããè¿œå ã®èšå®ã¯ãããŸããã ãã ãããã¬ãŒã¹ã®èšå®æã«äœ¿çšããèšå®ãšåæ§ã«ããããã¡ã€ãªã³ã°ãèšå®ã§ããèšå®ãããã€ããããŸãã
æåã«ãxdebugã¯ããã©ã«ãã§/ tmpãã£ã¬ã¯ããªã«ãããã¡ã€ã«ãã°ãæžã蟌ã¿ãŸãã Windowsã䜿çšããŠããå Žåã¯ã次ã®ããã«php.iniãä¿®æ£ããå¿ èŠããããŸãã
xdebug.profiler_output_dir = "cïŒ\ traces"
ããã©ã«ãã§ã¯ãxdebugã¯æ¢åã®ãããã¡ã€ã«ãã°ãäžæžãããŸãã æ¢åã®ãã®ãè£å®ããããã«æ§æã§ããŸãããã®ããã«ã次ã®ã³ãã³ããè¿œå ããŸã
xdebug.profiler_append =ãªã³
php.iniã§ã ãã¹ãŠã®ãã¡ã€ã«ã®ãããã¡ã€ãªã³ã°ãã°ãäœæããããªãå ŽåããããŸãããåæã«ãå®è¡äžã«ãããã¡ã€ãªã³ã°ãã¢ã¯ãã£ãåããããšã«ã¯åé¡ããããŸãã ãããã¡ã€ã«ãå®æçã«ãªã³ãŸãã¯ãªãã«ãã代ããã«ãã³ãã³ããè¿œå ããŸã
xdebug.profiler_enable_trigger =ãªã³
php.iniã§ã ããã§ãç¹å¥ãªGETãŸãã¯POSTãã©ã¡ãŒã¿ãŒXDEBUG_PROFILEãPHPã¹ã¯ãªããã«æž¡ãããšã§ããããã¡ã€ãªã³ã°ã®ãªã³ãšãªããåãæ¿ããããšãã§ããŸãã ããã«ããããã®PHPã¹ã¯ãªããã«å¯ŸããŠã®ã¿ãããã¡ã€ãªã³ã°ãæå¹ã«ãªããŸãã ãã®ãã©ã¡ãŒã¿ãŒã®å€ãèšå®ããå¿ èŠã¯ãããŸããããã®ãã©ã¡ãŒã¿ãŒãã¢ãã¬ã¹test.phpïŒXDEBUG_PROFILEã«è¿œå ããã ãã§ããããšãå¿ããªãã§ãã ããã
ãããã¡ã€ã«ãã°å
ããã©ã«ãã®ååxdebugã¯ããããã¡ã€ã«ãã°ãcachegrind.outãã«å²ãåœãŠãŸããããŒã¯ããã»ã¹èå¥åã§ãã ãã¬ãŒã¹ãã°ã®å Žåãšåæ§ã«ãé©åãªèšå®ãphp.iniã«è¿œå ããããšã«ããããã°åãå€æŽã§ããŸãã ãã©ã¡ãŒã¿ãŒåã¯xdebug.profiler_output_nameã§ãã åŒæ°ã¯æååã§ãã ããŸããŸãªä¿®é£Ÿåãå«ãŸããå ŽåããããŸãã 以äžãæãéèŠã§ãïŒ
- ïŒ p-ããã»ã¹ID
- ïŒ r-ä¹±æ°
- ïŒ u-æé
- ïŒ H-$ _SERVER ['HTTP_HOST']ã®å€
- ïŒ R-$ _SERVERã®å€['REQUEST_URI']
- ïŒ s-ãã«ãã¹ãå«ãååãã¹ã©ãã·ã¥ã¯ã¢ã³ããŒã¹ã³ã¢ã«å€æãããŸã
ïŒ s修食åã¯xdebug.profiler_output_nameã«ã®ã¿äœ¿çšãããããšã«æ³šæããŠãã ããã ãããã¡ã€ãªã³ã°ãã°ã®ååãç¥ãããå Žåã¯ãxdebug_get_profiler_filenameïŒïŒé¢æ°ãåŒã³åºãããšãã§ããŸãã
ãããã¡ã€ãªã³ã°ãã°åæ
åè¿°ã®ããã«ããããã¡ã€ãªã³ã°ãã°ãåæããã«ã¯ãããŒã¿ãèŠèŠåããããã®è¿œå ã®ããã°ã©ã ãå¿ èŠã§ãã xdebugãäœæãããã¹ãŠã®ãããã¡ã€ãªã³ã°ãã°ã¯ãCachegrind圢åŒã«é¡äŒŒãã圢åŒã§ãã Cachegrindã¯ã ValgrindãšåŒã°ãããã匷åãªããã°ã©ã ã®äžéšã§ãããããã¡ã€ã©ãŒã§ããããã¯ãLinuxçšã®ãœãããŠã§ã¢ããããã°ããã³ãããã¡ã€ãªã³ã°ããããã®ããã°ã©ã ã§ãã Cachegrindã¯ããã£ãã·ã¥çµ±èšãã¡ã¢ãªäœ¿çšéãããã°ã©ã ã³ãã³ããåæããããã«èšèšãããŸããã å¥ã®ValgrindããŒã«ã§ããCallgrindã¯ãã³ãŒã«ã°ã©ããæç»ããŸãã PHPã«ã€ããŠã¯ããã®ã¢ããªã±ãŒã·ã§ã³ã䜿çšããŠããããã¡ã€ãªã³ã°ãã°ãèŠèŠåããã³åæã§ããŸãã
xdebugã«ãã£ãŠäœæããããããã¡ã€ãªã³ã°ãã°ã®åæã«äžè¬çã«äœ¿çšãããããŒã«ã¯KCachegrindãšåŒã°ããŸã ã KCachegrindã¯ãGPLã®äžã§ã©ã€ã»ã³ã¹ãããããªãŒãœãããŠã§ã¢ã§ãïŒUnixã·ã¹ãã ã§ã®ã¿åäœããŸãïŒã ãã ããWindowsçšã®ã·ã³ãã«ãªããã°ã©ã -WinCachegrindããããŸããããããç¡æã§ãã æåã«WindowsããŒãžã§ã³ãèŠãŠã¿ãŸãããã
WinCacheGrindïŒWindowsã®ãããã¡ã€ãªã³ã°ãã°ã®åæ
çŸåšã®ããŒãžã§ã³ïŒãã®èšäºã®èè ã«ããå·çæç¹ïŒWinCachegrindã¯1.0.0.12ã§ãã ãã®ããŒãžã§ã³ã®æ¥ä»ã¯2005幎ã§ããããã¯ãWinCachegrindãé·ãééçºãããŠããªãããšã瀺ããŠããŸãã ãªãªãŒã¹ããŒãã®ãªãªãŒã¹ããŒããèŠããšãèè ã¯ããã°ã©ã ã«ãšã©ãŒãããããã®åäœãå¥åŠã«ãªãããšããããšæžããŠããŸãã
ãã®ãããUbuntuãªã©ã®ææ°ã®Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã®ä»®æ³ãã·ã³ã«åºã¥ããŠèµ·åãããKCachegrindã䜿çšããããšããå§ãããŸãïŒäžè¬çã«å¥åŠãªæšå¥šäºé ã説æãã翻蚳è ã®æ³šæããã®å Žåã¯Linuxãã€ã³ã¹ããŒã«ããããšããå§ãããŸããä»®æ³ãã·ã³ã®åºãå²ãããšã¯ãå§ãããŸããïŒã Windowsã§ã¯ãèšå€§ãªæ°ã®ä»®æ³ãã·ã³ã䜿çšã§ããŸãã äœããã®çç±ã§UnixãŸãã¯ä»®æ³ãã·ã³ã䜿çšã§ããªãå Žåã¯ãWinCachegrindã䜿çšããŠããããã¡ã€ã«ãã°ã®ç°¡åãªåæãç¶ç¶ã§ããŸãã KCachegrindãšã¯ç°ãªããWinCachegrindã¯åŒã³åºãã°ã©ããæç»ããŸããã
Wincachegrindã®ã€ã³ã¹ããŒã«ã¯éåžžã«ç°¡åã§ãã ã€ã³ã¹ããŒã©ãŒãå®è¡ãããã¿ã³ãã¯ãªãã¯ããŠã©ã€ã»ã³ã¹ã«åæãããšãã€ã³ã¹ããŒã«ãå®äºããŸãã ããã§ãããã°ã©ã ãå®è¡ããxdebugã§äœæãããcachegrindãããã¡ã€ã«ãã°ã®1ã€ãéããŸãã
ãŠã©ãããŸãã¯ã·ã°ãã¢ã€ã³ã³ãã¯ãªãã¯ãããšã絶察å€ãšããŒã»ã³ããŒãžã§æ å ±ã®åºåãåãæ¿ããããšãã§ããŸãã ããŒã»ã³ã衚瀺ã¯ããã®ãããã¯å ã®é¢æ°åŒã³åºãã«ãããåèšæéã®å²åãšããŠæéã瀺ããŸãã
2ã€ã®äŸ¿å©ãªèšå®ã¯ããããã¡ã€ã©ãŒ->é«éæ©èœã®é衚瀺ãšãããã¡ã€ã©ãŒ->ã©ã€ãã©ãªæ©èœã®é衚瀺ã§ãã æåã®ã¹ã€ããã¯ãããã°ã©ã ã®åèšå®è¡æéã«å¯Ÿããæéã®å¯äžãããããªé¢æ°ãé ããŸãã
2çªç®ã®èšå®ããããã¡ã€ã©ãŒ->ã©ã€ãã©ãªé¢æ°ã®é衚瀺ã¯ãäžè¬çãªåæããPHPã«çµã¿èŸŒãŸããé¢æ°ãé衚瀺ã«ããŸãã ãããã®èšå®ãäž¡æ¹ãªã³ã«ãããšã衚瀺ãããããŒã¿ãå°ãªããªããããæé©åãå¿ èŠãªã³ãŒãéšåã«éäžã§ããŸãã
ã¡ã€ã³ãŠã£ã³ããŠã«ã¯ã[è¡ããš]ãš[å šäœ]ã®2ã€ã®ã¿ãããããŸãã äž¡æ¹ã®ã¿ãã«ã¯åãæ å ±ã衚瀺ãããŸããã[å šäœ]ã¿ãã«ã¯æ å ±ãéçŽãããèŠããããªã£ãŠããŸãã èªå·±æéã¯ãçŸåšã®ãããã¯ã®ã³ãŒãã®éå§æéã衚瀺ãã环ç©æéïŒçŽ¯ç©ïŒã¯ããã®ãããã¯ã§é¢æ°ãéå§ããåèšæéã衚瀺ããŸãã
KCacheGrindïŒUnixã§ã®ãããã¡ã€ãªã³ã°ãã°ã®åæ
KCachegrindã®UnixããŒãžã§ã³ã¯ãWinCachegrindãããå€ãã®æ©èœãæäŸããŸãã KCachegrindã¯ããŒã¿ãèŠèŠåããåŒã³åºãã®ã°ã©ããäœæããŸãã
䜿çšãéå§ããã«ã¯ãKCachegrindãã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã çŸåšã®ããŒãžã§ã³ã¯0.4.6ã§ãã æ°ããããŒãžã§ã³ïŒ0.10.1ïŒãå©çšå¯èœã§ãããããã¯Valgrindããã±ãŒãžã®äžéšã§ãã
å¯èœã§ããã°ãããã±ãŒãžãããŒãžã£ãŒã䜿çšããŠKCachegrindããã±ãŒãžãã€ã³ã¹ããŒã«ããŸãã KCachegrindã¯GraphVizã䜿çšããŠåŒã³åºãã°ã©ããæç»ãããããããã±ãŒãžãããŒãžã£ãŒãäŸåããã±ãŒãžãèªåçã«ã€ã³ã¹ããŒã«ããªãå Žåã¯ãGraphVizããã±ãŒãžãã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã
KCachegrindãã€ããªããã±ãŒãžãèŠã€ãããªãã£ãå Žåã¯ãKCachegrindãèªåã§ã³ã³ãã€ã«ããå¿ èŠããããŸãã ãœãŒã¹ãããŠã³ããŒãããåŸãå®è¡ããŸã
./configure --prefix = / opt / kde3
äœã
ã€ã³ã¹ããŒã«ãã
泚æã§ããããã«ãKDEã©ã€ãã©ãªã®çŸåšã®ã€ã³ã¹ããŒã«ãžã®ãã¹ãæå®ããå¿ èŠããããŸãã ã·ã¹ãã äžã®KDEã©ã€ãã©ãªã®å Žæãããããªãå Žåã¯ã
kde-config --prefix
KDEã©ã€ãã©ãªãžã®ãã¹ã衚瀺ããŸãã
ã€ã³ã¹ããŒã«åŸãã³ãã³ãã©ã€ã³ããKCacheGrindãèµ·åã§ããŸã
opt / kde3 / bin / kcachegrindïŒ
KCachegrindã®è¡šåœ¢åŒã®ããŒã¿ãããã³ã°ã¯ãWinCachegrindã«éåžžã«äŒŒãŠããŸãã 絶察å€ãšããŒã»ã³ãå€ãåãæ¿ããããšãã§ããŸãã KCachegrindã®äžéšã®æ©èœã¯ãPHPåãã§ã¯ãããŸããã 以äžã®å³ã¯ãphpMyAdminããã°ã©ã ã®åŒã³åºãã°ã©ãã瀺ããŠããŸãã
ã芧ã®ãšãããèµ·åæéã®ã»ãšãã©ã¯common.inc.phpå ã§çµéããŠããŸãã 次ã®ã¹ã¯ãªãŒã³ã·ã§ããã¯ãcommon.inc.phpå ã®é¢æ°åŒã³åºãã®èŠèŠåã瀺ããŠããŸãã
ãã®ã³ãŒããããã¯ã§ã¯ã2ã€ã®require_onceãå®è¡ãããŸããããã¯ãcommon.inc.phpã®éå§æéã®ååã§ãã ä»»æã®é·æ¹åœ¢ãããã«ã¯ãªãã¯ããããšã«ãããããŒã¿åæã®è©³çŽ°ã確èªã§ããŸãã
ãããã¡ã€ãªã³ã°ããŒã¿ã«åºã¥ãã³ãŒãã®æé©å
æé©åããåã«ãåžžã«ã¢ããªã±ãŒã·ã§ã³ã®ãããã¡ã€ã«ãäœæããŠãã ããã ãã®æé©åãå¹æããããããšæãããå Žæã§ãèªåã§æé©åãéå§ããããšãã§ããŸãããããã¯å¿ ãããçå®ã§ã¯ãããŸããã æé©åã¯ãäž»ã«ãå®è¡ããã»ã¹ã§ã»ãšãã©ã®æéãå ããéšåã§ã®ã¿å¹æããããŸãã
ããã°ã©ã ã®è€æ°ã®ã³ããŒãåæã«å®è¡ããå Žåãå®è¡æéã®å€§éšåãå ããããã°ã©ã ã®éšåãæé©åããå¿ èŠããããŸãã ãã®å Žåãæé©åã«ãã£ãŠåã ã®ãªã¯ãšã¹ãã®åŠçãéããªãããšã¯ãããŸãããããµãŒããŒãé«è² è·ã«èããããšãã§ãããã®ãããªãªã¯ãšã¹ããåŠçããããã®ãªãœãŒã¹ã®æ¶è²»ãå°ãªããªããŸãã
ãããã¡ã€ã©ãŒã«ããèµ·åæéãèŠããšãã絶察å€ã¯çžå¯Ÿå€ãããéèŠã§ã¯ãªãããšã«æ³šæããŠãã ããã ç°ãªãã·ã¹ãã ã§æž¬å®ããå Žåã絶察å€ã¯ç°ãªãå ŽåããããŸãã ãã ããã³ãŒãã®æé©åãéå§ããåã«ã次ã®ããšãèæ ®ããŠãã ããã
æé©åã®éèŠãªã«ãŒã«ã¯ãI / Oæäœã®æ°ãæžããããšã§ãã äžéšã®I / Oæäœã¯ãèšç®ã«æ¯ã¹ãŠéåžžã«æéãããããŸãã ãã®ãããªæäœãæžããããšã¯ãããã°ã©ã ãé«éåããã®ã«éåžžã«å¹æçã§ãã 1ã€ã®I / OåŒã³åºããåé€ãããšã倧éã®ã³ãŒããæé©åãããããå¹ççã«æ¹åã§ããŸãã ãããã£ãŠãã³ãŒãã®äœ¿çšãéå§ããåã«ããŸãI / Oæäœã«éäžããå¿ èŠããããŸãã
ãŸããæé©åã®åã«ããµãŒããŒã®æ°ãå¢ããããšãã§ããŸãã 巚倧ãªãã®ãè³Œå ¥ããããšã§ãçç£æ§ããããã«é«ããããšãã§ããŸãã éçºæéã¯ãæ°ãããµãŒããŒã®äŸ¡æ Œãããé«ããªããŸãã ãŸããéã®éãå¢ãããšãPHPã³ãŒãã«åœ±é¿ãäžããããšãªããããã«å¢å ããããšã確信ã§ããŸãã éçºè ãã³ãŒãã®æé©åã«1ã2æ¥è²»ããå Žåãçç£æ§ãã©ã®çšåºŠåäžãããã¯æ±ºããŠèšããŸããã ãããŠæçµçã«ãæé©åã«ãã£ãŠãšã©ãŒãçºçããªãããšã確èªã§ããªããªããŸãã
äžéšã®ããŒãžãéçã«å€æããããšã¯ãããã©ãŒãã³ã¹ãåäžããã1ã€ã®æ¹æ³ã§ãã ãã©ãã£ãã¯ã®å€ããµã€ãããããåãªã¯ãšã¹ãã®PHPã¹ã¯ãªãããæåã®ããŒãžãäœæããããŒã¿ããŒã¹ãŸãã¯XMLãã¡ã€ã«ããæ å ±ãéžæãããšããŸãã ããŒãžäžã®ããŒã¿ãé »ç¹ã«å€æŽãããå Žåãéçã³ããŒãåäœæã§ããŸãã ããŒãžã®éçãã¥ãŒãžã®å€æãäžå¯èœãªå ŽåïŒããŒãžã«å人æ å ±ã衚瀺ãããå ŽåïŒãäžéšã®ãããã¯ãéçã«å€æã§ããŸãã
å¥ã®ã¬ãã«ã®æé©åã§ã¯ãPHPã³ãŒããå€æŽããå¿ èŠã¯ãããŸããã ãåãã®ããã«ãPHPã¯ã€ã³ã¿ãŒããªã¿ãŒèšèªã§ãã ããã¯ãã³ãã³ããå®è¡æã«äžéã³ãŒãã«å€æãããããšãæå³ããŸãã ãããŒããã£ã¹ãã¯ãã¹ã¯ãªãããå®è¡ããããã³ã«ç¹°ãè¿ãããŸãã ããã«ãããCãå®è¡ãããã³ã«ã³ãŒãã解æããå¿ èŠããªãCãJavaãªã©ã®èšèªãšæ¯èŒããŠãPHPãé ããªããŸãã PHPã®å Žåãäžéè¡šçŸãã£ãã·ã¥ïŒç§ã®ç¿»èš³ãã芧ãã ãã...ïŒã䜿çšããŠäžéã³ãŒããä¿åããã³åå©çšã§ããŸããããã«ãããèµ·åãšå®è¡ãé«éã«ãªããŸãã
ããã¯ãPHPã³ãŒããæé©åããæéãšå Žæããªããšããæå³ã§ã¯ãããŸããã äžéšã®ã³ãŒãã®æé©åã«ãããããã©ãŒãã³ã¹ãå€§å¹ ã«åäžããŸãã ãã ããã³ãŒããå€æŽãããšãåžžã«è¿œå ã®ãšã©ãŒãã»ãã¥ãªãã£äžã®åé¡ãçºçãããªã¹ã¯ãããããšã«æ³šæããŠãã ããã ãŸããã³ãŒããæé©åãããšèªã¿ã«ãããªããŸãã
ãããã«
ãããã¡ã€ãªã³ã°ãã°ã®äœæãšèŠèŠåã¯ãPHPã³ãŒããæé©åããããã®éèŠãªæ¡ä»¶ã®1ã€ã§ãã ããã°ã©ã å ã§æãæéãå¿ èŠãªå Žæãç¥ãå¿ èŠããããããããæé©åãå§ãŸããŸãã
次ã®èšäºã§ã¯ãxdebugã䜿çšãããããã°ã«ã€ããŠèª¬æããŸãã xdebugã¯ããªã¢ãŒãã§ãããã°ããæ©èœãæäŸããå ŽåããããŸãã ãã®æ©èœãå®è£ ããã¯ã©ã€ã¢ã³ãïŒEclipse PDTãªã©ïŒã䜿çšãããšãã³ãŒããå€æŽããã«ãããã°ãããã¬ãŒã¯ãã€ã³ããèšå®ããã³ãŒãã®ã»ã¯ã·ã§ã³ãã¹ãããããŠãå€æ°ãå€ãå€æŽããæ¹æ³ãšå Žæãç£èŠã§ããŸãã