рд▓реЗрдЦ рд╡реЗрдм-рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ xdebug рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдЧрд╛ред рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЛ рдХреЛрдб рдХреЗ рдирд┐рджрд╛рди рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрд╛ рдХрд╛рдо рд╣реИред рдРрд╕рд╛ рд╣реИред рд▓реЗрдХрд┐рди, рдХреИрд╕реЗ, рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЙрд╕рдХрд╛ рдХреЛрдб рдЗрд╖реНрдЯрддрдо рдирд╣реАрдВ рд╣реИ (рдпрджрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рд╣реИ) рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рд╣рд░ рд╕рдордп рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ: "рд╣рдорд╛рд░реЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ - рд╕рд░реНрд╡рд░ рдХреА рдорд░рдореНрдордд рдХрд░реЗрдВ"? рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдмрд╣рд╕ рдХрд░рдирд╛ рдЕрд╡рд╛рдВрдЫрдиреАрдп рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░рд╛ рдмрд╣реБрдд рдкреНрд░рд┐рдп рдФрд░ рдЕрдбрд┐рдЧ рдЧреНрд░рд╛рд╣рдХред
рд╡реЗрдм-рд╕рд░реНрд╡рд░ рдХрд╛ рдкреНрд░рд╢рд╛рд╕рди рдХрд░рддреЗ рд╕рдордп, рдЗрдВрдЬреАрдирд┐рдпрд░ рдЕрдХреНрд╕рд░ рдРрд╕реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╕рд╛рдЗрдЯ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдЪрд▓рдиреЗ" рдпрд╛ "рдзреАрдореЗ рдЪрд▓рдиреЗ" рдХреЛ рдХрд╣рддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЬреЛ рд╕рд╛рдЗрдЯ рдХреЗ рдорд╛рд▓рд┐рдХ рдХреЗ рд▓рд┐рдП рдЧрдВрднреАрд░ рд╡рд┐рддреНрддреАрдп рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдЗрд╕ рд╢рдмреНрдж "рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ" рдХреЗ рд╕рд╛рде рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ / рдпрд╛ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рдорд╛рд▓рд┐рдХ рдЖрдорддреМрд░ рдкрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рд╢рдмреНрдж рд╕рдм рдХреБрдЫ рдФрд░ рд╕рдм рдХреБрдЫ рдХрд╛ рдирд┐рджрд╛рди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдРрд╕реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдгреЛрдВ рдХреЛ рд▓рдЧрднрдЧ рдХрд╣реАрдВ рднреА рдЫрд┐рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдХрдИ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╕реНрд╡рдпрдВ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рдореНрди рд╕реНрддрд░ рдкрд░ "рдмреНрд░реЗрдХ" рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрдЧреАрдХреГрдд рдХрд░рддрд╛ рд╣реИ:
- рд╕рд╛рдЗрдЯ рдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рдПрдХреНрд╕реЗрд╕ рдЪреИрдирд▓ рдореЗрдВ рджреЗрд░реА
- рд╕рд░реНрд╡рд░ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕рдорд╕реНрдпрд╛рдПрдБ
- рдкрд░реНрдпрд╛рдкреНрдд рд╕рд░реНрд╡рд░ рд╕рдВрд╕рд╛рдзрди рдирд╣реАрдВ
- рдПрдХ рдЙрдк-рдЗрд╖реНрдЯрддрдо рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо
- рдЙрдк-рдЗрд╖реНрдЯрддрдо рд╕реЙрдлреНрдЯрд╡реЗрдпрд░
- рддреГрддреАрдп-рдкрдХреНрд╖ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ, рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдПрдХреНрд╕реЗрд╕ рдХреЛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
- Suboptimal рд╕рд╛рдЗрдЯ рдХреЛрдб
рдкреНрд░рд╢рд╛рд╕рдХ рдХрд╛ рдХрд╛рд░реНрдп рдкрд╣рдЪрд╛рди рдХрд░рдирд╛ рд╣реИ рдФрд░ рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦрддреНрдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рд╡реЗ, рдирд┐рд╕реНрд╕рдВрджреЗрд╣, рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣реИрдВред рдФрд░ рдЕрдВрддрд┐рдо рдФрд░, рд╕рдВрднрд╡рддрдГ, рджрдВрдбрд╛рддреНрдордХ рдмрд┐рдВрджреБ рдЙрд╕рдХреЗ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рднреА рджрд┐рдЦрд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЗрди рдмрд┐рдВрджреБрдУрдВ рдореЗрдВ рдареАрдХ рд╣реИред
рдпрд╣ рдмрд╛рдж рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдЕрдкрдиреЗ рд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗред рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рд╕рд╛рдЗрдЯ рдХреЗ рдзреАрдореЗ рд╕рдВрдЪрд╛рд▓рди рд╕реЗ рдЬреБрдбрд╝реА рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд▓рдЧрднрдЧ 90% рд╣реИред рдЧреИрд░-рдЗрд╖реНрдЯрддрдо рдХреЛрдб, рдЦрд░рд╛рдм рд▓рд┐рдЦрд┐рдд SQL рдХреНрд╡реЗрд░реА, рддрд╛рд▓реЛрдВ рдХрд╛ рдЕрдиреБрдЪрд┐рдд рдЙрдкрдпреЛрдЧ - рдпрд╣ рд╕рдм рд╕рд╛рдЗрдЯ рдХреЛ рдзреАрдорд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдЕрдЧрд░ рдХреБрдЫ рдмрд┐рдВрджреБ рддрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЦрд░рд╛рдм рдХреЛрдб рдХреЛ рдкрдЪрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ "x" рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде, рдпрд╣ рдХреЗрд╡рд▓ рд▓реЛрдб рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред рдХреНрд╖рдорддрд╛ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдмрдврд╝рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╡реЗ рдХрд┐рд╕реА рджрд┐рди рдмрд╛рд╣рд░ рдЪрд▓рд╛рдПрдВрдЧреЗ, рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдпрд╣ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЙрдкрдХрд░рдг рд▓рд╛рдЧрдд рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╕рд╛рдЗрдЯ рдХреЛрдб рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рд╢реБрд░реВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрд╣ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдХрд┐ рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрдм рдирдП рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХрд╛ рдЕрдзрд┐рдЧреНрд░рд╣рдг рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдХреЛрдб рдХреЛ рдкрд╛рд░реНрд╕ рдФрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЖрд░реНрдерд┐рдХ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рд▓рд╛рднрджрд╛рдпрдХ рд╣реИред
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░реНрдп, рд╡рд┐рдЪрд┐рддреНрд░ рд░реВрдк рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ - рд╕рд░реНрд╡рд░ рдкреНрд░рд╢рд╛рд╕рдиред рд╡рд╣ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЙрд╕реЗ рдХреЛрдб рдХреЛ рдЫреВрдиреЗ рдХрд╛ рдХреЛрдИ рдиреИрддрд┐рдХ рдЕрдзрд┐рдХрд╛рд░ рдирд╣реАрдВ рд╣реИ, рднрд▓реЗ рд╣реА рд╡рд╣ рдЦрд░рд╛рдм рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реЛред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдХреЛрдб рдХрд╛ рд╕рдмрд╕реЗ рд╡рд┐рд╕реНрддреГрдд рдирд┐рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмрд╛рдзрд╛рдУрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрди рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдХреЛрдб рд╕рдВрдкрд╛рджрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рд╣рд╛рдВ, рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рднреВрд▓ рдЧрдпрд╛, рдпрд╣ PHP рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ! рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реЗрдм рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, "рдкреНрд░реЗрдо" рдХреА рдХреАрдордд рдкрд░ рд╕рд╡рд╛рд▓ рдмрд▓реНрдХрд┐ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИред
Xdebug
Xdebug рдПрдХ
PHP рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдПрдХ
PHP рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╣реИ рдФрд░ php рдХреЛрдб рдореЗрдВ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИред
рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ рдХреЗ рдкреНрд░рд┐рдЬреНрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
xdebug рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рдХреЗрд╡рд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╕рд╛рдЗрдЯ рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╕рд░реНрд╡рд░ рдХреЛ рднреА рдзреАрдорд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдХреЛрдИ рднреА рд░реВрдкрд░реЗрдЦрд╛ рдпрд╛ рдЕрдиреБрд░реЗрдЦрдг рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдЕрддрд┐рд░рд┐рдХреНрдд рджреЗрд░реА рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдирд┐рджрд╛рди рдХреЛ рд╕рд╛рдЗрдЯ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
Xdebug рд╕реНрдерд╛рдкрдирд╛
Centos / RHEL / рдлреЗрдбреЛрд░рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, Xdebug рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ EPEL рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реИ:
$ рдпрдо php-pecl-xdebug рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВPecl рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕реНрдерд╛рдкрдирд╛:
$ pecl xdebug рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рд╕реЗ xdebug рдХреЛ рдкрд╣рд▓реЗ
http://xdebug.org/download.php рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдХреЗ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
$ рдЯрд╛рд░ xvzf xdebug-2.2.1.tgz$ cd xdebug-2.2.1$ phpize$ ./configure --enable-xdebug$ рдореЗ && рдореЗрдХ рдЗрдирд╕реНрдЯреЙрд▓Xdebug рд╕реЗрдЯрдЕрдк
рдореВрд▓ рд╕реЗрдЯрдЕрдк рдХреЗрд╡рд▓ рдирдП рд╕реНрдерд╛рдкрд┐рдд рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ
php.ini рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдЖрдкрдХреЛ рд▓рд╛рдЗрди рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░рдиреА рд╣реЛрдЧреА:
zend_extension = /path/to/xdebug.so
xdebug.default_enable = 0
xdebug.overload_var_dump = 0
рдпрджрд┐ рд▓рд╛рдЗрди рдХреЛ
php.ini рдпрд╛ рдХрд┐рд╕реА рднреА
рд╕рдореНрдорд┐рд▓рд┐рдд рдлрд╛рдЗрд▓ рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
/etc/php.d/xdebug.ini , рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВред
рдЙрд╕ рдкрд▓ рд╕реЗ, рд╕рд╛рдЗрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдкрдиреЗ рдирд┐рдкрдЯрд╛рди рдореЗрдВ рдирдП xdebug рдлрд╝рдВрдХреНрд╢рди рдорд┐рд▓реЗ, рдЬреЛ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ рджреЛ рдирд┐рд░реНрджреЗрд╢ рд╣рдо рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рд╕реНрдЯреИрдХ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛрддреА рд╣реИрдВ рдФрд░ рдорд╛рдирдХ рдлрд╝рдВрдХреНрд╢рди
var_dump () рдХреЗ рдУрд╡рд░рд░рд╛рдЗрдб рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдпрд╣ рдПрдХ рдЕрджреНрднреБрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдЬреЛ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИ, рдпрд╣ рд╕рд╛рдЗрдЯ рдХреЛрдб рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓ рджреЗрддреА рд╣реИ (рдереЛрдбрд╝рд╛ рд╕рд╛)ред рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддреЗред
рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛: рдЯреНрд░реЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓
рдХрд┐рд╕реА рд╕рд╛рдЗрдЯ рдХрд╛ рдирд┐рджрд╛рди рдХрд░рдиреЗ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рдЙрдкрдпреЛрдЧреА рддрд░реАрдХрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реИред рдЬрдм рдЖрдк рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЪреБрдиреЗ рдЧрдП рд╕рд╛рдЗрдЯ рдХреЗ рдХрд┐рд╕реА рднреА рдкреГрд╖реНрда рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдХрд╛рд░реНрдп рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдкрд░ рдЖрдВрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдЕрд░реНрдерд╛рддреН:
- рдХреЛрдб рдкреНрд░рд╛рд░рдВрдн рдФрд░ рд╕рдорд╛рдкреНрддрд┐ рд╕рдордп
- рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЖрджреЗрд╢
- рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп
- рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд
рдпрд╣ рдЕрдореВрд▓реНрдп рдЬрд╛рдирдХрд╛рд░реА "рдмреНрд░реЗрдХ" рдЕрдиреБрднрд╛рдЧ рдпрд╛ рдХреЛрдб рдХреЗ рдЕрдиреБрднрд╛рдЧреЛрдВ рдХреЛ рдордЬрд╝рдмреВрддреА рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдЦрдкрдд рдореЗрдореЛрд░реА рдХреА рдорд╛рддреНрд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред
рдЯреНрд░реЗрд╕ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдХреБрдЫ рдЪрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд╣рдореЗрдВ рд╕реВрдЪрдирд╛ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗ рдФрд░ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░реЗрдВрдЧреЗред
xdebug.collect_params рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рддрд░реНрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХрд┐рддрдирд╛ рд╡рд┐рд╡рд░рдг рдЪрд╛рд╣рд┐рдПред 0 - рдиреНрдпреВрдирддрдо, рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред 1 - рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд░реНрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХреА рдЬрд╛рддреА рд╣реИред 3 - рддрд░реНрдХреЛрдВ рдХреЗ рдЕрд░реНрде рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реАред 4 - рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА: рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЗ рд╕рдордп рдкреНрд░рдХрд╛рд░, рдирд╛рдо, рддрд░реНрдХ рдореВрд▓реНрдпред рд╣рдо рдЬрд┐рддрдиреА рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЕрдиреБрд░реЗрдЦрдг рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧреЗрдЧрд╛ред
xdebug.show_mem_delta рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░ рдЕрдВрддрд┐рдо рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдореЗрдореЛрд░реА рдЦрдкрдд рдореЗрдВ рдЕрдВрддрд░ рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рдпрд╛ рди рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рддрд╛ рд╣реИред
xdebug.trace_enable_trigger рдорд╛рдВрдЧ рдкрд░ рдЕрдиреБрд░реЗрдЦрдг рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдпрд╛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред
xdebug.auto_trace рд╣рд░ рдмрд╛рд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЗрдЯ рдХреЗ рдкреГрд╖реНрдареЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдкрд░ рдЯреНрд░реЗрд╕ рдХреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╢реБрд░реБрдЖрдд рдХреЛ рд╕рдХреНрд╖рдо рдпрд╛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред
xdebug.collect_assignments рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдЪрд░ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рдпрд╛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред
xdebug.collect_includes рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдЬреБрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИ рдпрд╛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред
xdebug.collect_return рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП рдорд╛рдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИ рдпрд╛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред
xdebug.trace_output_dir рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдбрд╛рд▓реА рдЬрд╛рдПрдЧреАред
xdebug.trace_output_name рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдмрдирд╛рддрд╛ рд╣реИред
рд╢реЗрд╖ рдЪрд░ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рджреГрд╢реНрдп рдкреНрд░рджрд░реНрд╢рди рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ, рдФрд░ рд╣рдореЗрдВ рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИред рдорд╛рдирдХ рд░реВрдк рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕реНрд╡реАрдХрд╛рд░реНрдп рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред
рд╡рд┐рдзрд┐ рдХрд╛ рд╕рд╛рд░ рдХреЗрд╡рд▓ рдЙрд╕ рд╕рдордп рдЯреНрд░реЗрд╕рд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрдм рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЗрд╕реЗ рдЪрд╛рд╣рддрд╛ рд╣реИред рдирд┐рд░рдВрддрд░ рдЖрдзрд╛рд░ рдкрд░ рдЕрдиреБрд░реЗрдЦрдг рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рд╕рдВрд╕рд╛рдзрди рдХреА рдЦрдкрдд рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рдФрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░рд┐рдкреЛрд░реНрдЯ рднреА рдмрдирд╛рддрд╛ рд╣реИред рд╕рд░реНрд╡рд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЬрд┐рд╕ рд╕рдордп рдЕрдиреБрд░реЛрдз рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЙрд╕ рд╕рдордп рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдЙрд╕реЗ GET рдпрд╛ POST рдЕрдиреБрд░реЛрдз рдореЗрдВ
XDEBUG_TRACE рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╛ рдЗрд╕ рдирд╛рдо рдХреЗ рд╕рд╛рде рдХреБрдХреА рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рд╡рд┐рдзрд┐ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмреЗрд╣рддрд░ рд▓рдЧрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдПрдХ рдкреЛрд╕реНрдЯ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣ рд▓рдЧрднрдЧ рдХрднреА рднреА рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдФрд░ GET рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЗрд╕ рддрдереНрдп рд╕реЗ рдЬреБрдбрд╝реА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдХрд┐ рдкрддрд╛ рдмрд╛рд░ рдХреЛ рдЕрдХреНрд╕рд░ рд╕рд░реНрд╡рд░ рдкрд░ mod_rewrite рдпрд╛ рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ PHP рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░рд╛ рдЪрд░ рд╢рд╛рдпрдж рдЧрдВрддрд╡реНрдп рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реИред
рд╣рдо рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХрд┐рдП рдЧрдП рд╡реИрд░рд┐рдПрдмрд▓, рдХрдиреЗрдХреНрдЯреЗрдб рдлрд╛рдЗрд▓реНрд╕ рдФрд░ рдлрдВрдХреНрд╢рдирд▓ рдХреЙрд▓реНрд╕ рдХреЗ рдмреАрдЪ рдЦрдкрдд рдХреА рдЧрдИ рдореЗрдореЛрд░реА рдореЗрдВ рдЕрдВрддрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХрддрдо рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░реЗрдВрдЧреЗред рд░рд┐рдкреЛрд░реНрдЯ рдХреЛ
/ var / tmp рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрдиреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╣реЛрдВрдЧреАред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк,
php.ini рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдЬреЛрдбрд╝реЗрдВ:
xdebug.trace_enable_trigger = 1
xdebug.auto_trace = 0
xdebug.collect_params = 4
xdebug.show_mem_delta = 1
xdebug.trace_output_dir = / var / tmp
рдФрд░ рд╣рдо рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рд░рд┐рдмреВрдЯ рдХрд░рддреЗ рд╣реИрдВред рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд▓реЗрдВ:
<?php require "config.inc"; require "class/db.php"; for ($i = 1; $i < 6; $i++) { show_num($i); } $v = array(); alloc_array(1024); $db = DB::Get("mysql", HOST, USER, PASS, NAME); $db->connect(); echo "finished"; function show_num($i) { ($i % 2) ? show_odd($i) : show_even($i); } function show_odd($i) { echo "odd: $i<br>"; } function show_even($i) { echo "even: $i<br>"; sleep(1); } function alloc_array($size) { global $v; for ($i = 0; $i < $size; $i++) { $v[] = $i; } } ?>
рд╣рдо рдЕрдм рдЗрд╕рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдПрдВрдЧреЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдореВрд▓реНрдпрд╡рд╛рди рдирд╣реАрдВ рд╣реИред рдмрддрд╛ рджреЗрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдЙрд╕ рдкреГрд╖реНрда рдХреЛ рдЦреЛрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдпрд╣ рдХреЛрдб рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдкреЗрдЬ рджрд╕ рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╕рдордп рд╣реИ! рд╣рдорд╛рд░рд╛ рд▓рдХреНрд╖реНрдп рдпрд╣ рд╕рдордЭрдирд╛ рд╣реИ рдХрд┐ рдХреНрдпреЛрдВред рдЪреВрдВрдХрд┐ рдХреЛрдб рдЯреНрд░реЗрд╕ рдкрд╣рд▓реЗ рд╣реА рддрджрдиреБрд╕рд╛рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рдХреЗрд╡рд▓ рд╕рд░реНрд╡рд░ рдХреЛ рд╣рдорд╛рд░реЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ GET рдпрд╛ POST рдЕрдиреБрд░реЛрдз рдореЗрдВ XDEBUG_TRACE рдЪрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╛ рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╣рдордиреЗ рдЕрдВрддрд┐рдо рд╡рд┐рдХрд▓реНрдк рдЪреБрдирд╛ - рдХреБрдХреА рд╣рд╕реНрддрд╛рдВрддрд░рдгред
рдЖрдорддреМрд░ рдкрд░, рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдХреБрдХреА рдЪрд░ рдХреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ HTTP
рд╕реЗрдЯ-рдХреБрдХреА рд╣реЗрдбрд░ рднреЗрдЬрдХрд░
рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдкрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕рд░реНрд╡рд░ рд╕реЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╢реАрд░реНрд╖ рд▓реЗрдЦ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИ: рд╣рдо рд╕рд╛рдЗрдЯ рдХреЛрдб рдХреЛ рдирд╣реАрдВ рдЫреВрддреЗ рд╣реИрдВ, рдФрд░ рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдмреВрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдЖрд╡рдзрд┐рдХ (рдЧреИрд░-рдПрдХ-рд╕рдордп) рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рд╕рдмрд╕реЗ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рдЖрдкрдХреЗ (рдХреНрд▓рд╛рдЗрдВрдЯ) рдкрдХреНрд╖ рдкрд░ рд╣рдорд╛рд░реЗ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдХреБрдХреА рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реИред рд╣рдо рд╕рд░реНрд╡рд░ рдХреЛ рд╣рдореЗрдВ рдХреБрдХреА рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рд╕реЗрдЯ-рдХреБрдХреА рд╢реАрд░реНрд╖ рд▓реЗрдЦ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рднреА рд╕рдорд╛рди рдХрд╛рд░рдгреЛрдВ рд╕реЗред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЦреБрдж рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХреБрдХреАрдЬрд╝ рд╕реЗрдЯ рдХрд░реЗрдВрдЧреЗред Google Chrome рдореЗрдВ, рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕реАрдзреЗ рдПрдбреНрд░реЗрд╕ рдмрд╛рд░ рдореЗрдВ рдЪрд▓рд╛рдХрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ: document.cookie = "XDEBUG_TRACE = 1"
рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдВрджрд░реНрдн рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣реА рд╣реИ, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕рд╛рдЗрдЯ рдкреЗрдЬ рдЦреЛрд▓рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдлрд┐рд░ рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреБрд░реЛрдз рдХреЗ рдЕрдВрдд рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВред рдЕрдЧрд▓рд╛, рд╕рд░реНрд╡рд░ рдкрд░, рд╣рдо рдЗрд╕реА рдЯреНрд░реЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ
рд▓рд┐рдП / var / tmp рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ ред рдкрд░рд┐рдгрд╛рдореЛрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:
TRACE START [2012-09-25 11:19:54]
0.0005 645152 +645152 -> {рдореБрдЦреНрдп} () /var/www/test.phpPoint
0.0007 649296 +4144 -> рдЖрд╡рд╢реНрдпрдХрддрд╛ (/var/www/config.inc) /var/www/test.php:4
0.0007 649504 +208 -> рдкрд░рд┐рднрд╛рд╖рд┐рдд ('HOST', '10 .1.1.1 ') /var/www/config.inchaps
0.0008 649536 +32 -> рдкрд░рд┐рднрд╛рд╖рд┐рдд ('NAME', 'db') /var/www/config.inc:4
0.0008 649568 +32 -> рдкрд░рд┐рднрд╛рд╖рд┐рдд ('USER', 'u0') /var/www/confile.inchaps
0.0008 649600 +32 -> рдкрд░рд┐рднрд╛рд╖рд┐рдд ('рдкрд╛рд╕', 'рдкреАрдПрд╕') /var/www/config.inc6
0.0012 695728 +46128 -> рдЖрд╡рд╢реНрдпрдХрддрд╛ (/var/www/class/db.php) /var/www/test.phpeps
0.0013 694736 -992 -> show_num ($ i = 1) /var/www/test.php:8
0.0013 694736 +0 -> show_odd ($ i = 1) /var/www/test.php:21
0.0013 694864 +128 -> show_num ($ i = 2) /var/www/test.php:8
0.0013 694864 +0 -> show_even ($ i = 2) /var/www/test.php:21
0.0014 694960 +96 -> рдиреАрдВрдж (1) / рд╕рд╡рд░реНрдг / рд╡реНрд░рдд / рдкрдВрде ред30
1.0033 694864 -96 -> show_num ($ i = 3) /var/www/test.php:8
1.0034 694864 +0 -> show_odd ($ i = 3) /var/www/test.php:21
1.0034 694864 +0 -> show_num ($ i = 4) /var/www/test.php:8
1.0034 694864 +0 -> show_even ($ i = 4) /var/www/test.php:21
1.0035 694960 +96 -> рдиреАрдВрдж (1) / рд╕рд╡рд░реНрдг / рд╡реНрд░рдд / рдкрдВрде ред30
2.0047 694864 -96 -> show_num ($ i = 5) /var/www/test.php:8
2.0048 694864 +0 -> show_odd ($ i = 5) /var/www/test.php:21
2.0048 695224 +360 -> рдЖрдмрдВрдЯрди_рдЕрд░реНрдЬрд╝ ($ рдЖрдХрд╛рд░ = 1024) /var/www/test.php/13
2.0057 843024 +147800 -> DB :: Get ($ рдкреНрд░рдХрд╛рд░ = 'mysql', $ host = '10 .1.1.1 ', $ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ =' u0 ', $ рдкрд╛рд╕ =' ps ', $ db =' db ') / var /www/test.php:15
2.0057 843664 +640 -> absDB -> __ рдирд┐рд░реНрдорд╛рдг ($ рд╣реЛрд╕реНрдЯ = '10 .1.1.1 ', $ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ =' u0 ', $ рдкрд╛рд╕ =' ps ', $ db =' db ') / var / www / рд╡рд░реНрдЧ / dbред php: 10
2.0058 843664 +0 -> DB -> __ рдирд┐рд░реНрдорд╛рдг ($ рд╣реЛрд╕реНрдЯ = '10 .1.1.1 ', $ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ =' u0 ', $ рдкрд╛рд╕ =' ps ', $ db =' db ') / var / www /' db 'ред php: 36
2.0058 844000 +336 -> DB-> рдирд┐рд░реНрдорд╛рдг () /var/www/class/db.php:19
2.0058 844016 +16 -> absDB-> рдХрдиреЗрдХреНрдЯ () /var/www/test.php:16
2.0058 844368 +352 -> mysqli_connect ('10 .1.1.1 ',' u0 ',' ps ',' db ') /var/www/class/db.php:47
11.0164 8432
TRACE END [2012-09-25 11:20:05]
рд░рд┐рдкреЛрд░реНрдЯ рдХреА рдкрд╣рд▓реА рдФрд░ рдЖрдЦрд┐рд░реА рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдХреНрд░рдорд╢рдГ рдЕрдиреБрд░реЛрдз рдХреА рд╢реБрд░реБрдЖрдд рдФрд░ рд╕рдорд╛рдкреНрддрд┐ рд╕рдордп рджрд┐рдЦрд╛рддреА рд╣реИрдВред рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдХрд┐ рдХреЛрдб 11 рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ред рд░рд┐рдкреЛрд░реНрдЯ рдХреЛрдб рдореЗрдВ рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдХреЙрд▓ рдХреЗ рдХреНрд░рдо рдХреЛ рднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИ, рдЙрдирдХреЗ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рд╢рд┐рдХрд╛рд░ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдПред рдкрд╣рд▓рд╛ рдХреЙрд▓рдо рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдмреБрд▓рд╛рдП рдЬрд╛рдиреЗ рдХреЗ рд╕рдордп рд╕реЗрдХрдВрдб рдореЗрдВ рдХреБрд▓ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рджреВрд╕рд░рд╛ рдХреЙрд▓рдо рдЙрд╕ рд╕рдордп рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдореЗрдореЛрд░реА рдЦрдкрдд рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕ рд╕рдордп рдлрд╝рдВрдХреНрд╢рди рдХреЛ рднреА рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рддреАрд╕рд░рд╛ рдХреЙрд▓рдо PREVIOUS рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрд╛рд░рдг рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдореЗрдореЛрд░реА рдЦрдкрдд рдореЗрдВ рдЕрдВрддрд░ рд╣реИред рд╢реЗрд╖ рдХреЙрд▓рдо рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо, рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдФрд░ рд▓рд╛рдЗрди рдирдВрдмрд░ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдХрд╣рд╛ рдЬрд╛рддрд╛ рдерд╛ред
рдЖрдЗрдП рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдХрд┐ рдХреЛрдб рдзреАрд░реЗ-рдзреАрд░реЗ рдЪрд▓рдиреЗ рдХрд╛ рдХреНрдпрд╛ рдХрд╛рд░рдг рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ,
mysqli_connect () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд▓рдВрдмрд╛ рдХрд╛рдо, рдЬрд┐рд╕рдореЗрдВ рд▓рдЧрднрдЧ 9 рд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ, рд╣рдбрд╝рддрд╛рд▓реА рд╣реИред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рджреВрд░рд╕реНрде рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрдореВрд░реНрдд рдФрд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреА рдХрдИ рдкрд░рддреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрдИ рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдмрд╛рдд рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛,
рдиреАрдВрдж () рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рджреЗрд░реА рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛
рдкрд░рд┐рднрд╛рд╖рд┐рдд show_even () рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕реНрдореГрддрд┐ рдХреА рдЦрдкрдд рдХреЗ рд▓рд┐рдП, рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди
рдЖрд╡рдВрдЯрди_рдЕрд░реЗ () , рдФрд░ рд╕рд╛рде рд╣реА рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдореЗрдореЛрд░реА рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдЖрд╡рдВрдЯрди рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж
140KB рд╕реЗ рдЕрдзрд┐рдХ рдХреА рддреАрд╡реНрд░ рдЫрд▓рд╛рдВрдЧ рджреЗрдЦрддреЗ рд╣реИрдВред
рд╣рдо рд╕рднреА рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджрд┐рдП рдЧрдП рддрд░реНрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдбреЗрд╡рд▓рдкрд░ рдЗрди рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдХреА рд╕реЛрд░реНрд╕ рдХреЛрдб рд╕реЗ рддреБрд▓рдирд╛ рдХрд░ рд╕рдХреЗрдЧрд╛ред
рдХреЛрдб рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ
рдпрд╣ рдПрдХ рдФрд░ рдЕрд╡рд╕рд░ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ xdebug рдХреЛрдб рдореЗрдВ рдЕрдбрд╝рдЪрди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЬрд┐рд╕реЗ рд╕рд░реНрд╡рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╕рд╛рдЗрдЯ рдХреЛрдб рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рд╣реИред рдХреБрдХреА рдЪрд░ рдХреЗ рдирд╛рдо рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдлрд╝рдВрдХреНрд╢рди рдЯреНрд░реЗрд╕ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рдкрд░ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИред XDEBUG_TRACE рдХреЗ рдмрдЬрд╛рдп, XDEBUG_PROFILE рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓рддреА рд╣реИ, рдЬрд┐рд╕реЗ
vgrgrind рд╕реЗ
callgrind_annotate рдЙрдкрдпреЛрдЧрд┐рддрд╛ рджреНрд╡рд╛рд░рд╛ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП KDE рдпрд╛
WinCacherrind рдХреЗ рд▓рд┐рдП
KCacheGrind рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░реЗрдЦрд╛рдВрдХрди рднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдирдореЗрдВ рд╕реЗ
KCacheGrind рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдореАрд░ рд╣реИред
рдлрд╝рдВрдХреНрд╢рди рдЯреНрд░реЗрд╕рд┐рдВрдЧ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рдорд╛рди рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрди-рдбрд┐рдорд╛рдВрдб рд░реВрдкрд░реЗрдЦрд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
xdebug.profiler_enable = 0
xdebug.profiler_enable_trigger = 1
xdebug.profiler_output_dir = / var / tmp