рд╣реЗрд▓реЛ, рд╣реЗрдмреНрд░! рд╣рдореЗрдВ рдЗрд╕ рд╡рд░реНрд╖ PhpStorm рдХреА рдкрд╣рд▓реА рдмрдбрд╝реА рд░рд┐рд▓реАрдЬ рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдЦреБрд╢реА рд╣реИ!рдХрдЯреМрддреА рдХреЗ рддрд╣рдд, рд╕рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╢реНрд▓реЗрд╖рдгред рд╕рд╛рд╡рдзрд╛рдиреА - рдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рдПрдХ рдмрд╣реБрддредPhpStorm 2020.1 Toolbox App. 30- . JetBrains .
composer.json
рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреНрд░рд┐рдпрд╛рдПрдВ рдЕрдм рд╕реАрдзреЗ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ composer.json
рдФрд░ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рд╕реАрдзреЗ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВредрдЖрдк рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ рдпрд╛ рд╣реЙрдЯрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдИ рдХрдВрдкреЛрдЬрд░.рдЬрд╕рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВCtrl(тМШ)+N
ред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ / рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рд╣реИ рд╕рдВрдкрд╛рджрдХ | рдлрд╝рд╛рдЗрд▓ рдФрд░ рдХреЛрдб рдЯреЗрдореНрдкрд▓реЗрдЯ ред
рдирд┐рд░реНрднрд░рддрд╛рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рд╡рд┐рдХреНрд░реЗрддрд╛ рдФрд░ рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдо рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ, рдФрд░ рдЙрдЪрд┐рдд рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдСрдЯреЛ-рдкреВрд░реНрддрд┐ рдХреА рдПрдХ рд╕реВрдЪреА рджрд┐рдЦрд╛рдИ рджреЗред рдЗрд╕ рдкреИрдХреЗрдЬ рдХреЗ рдЙрдкрд▓рдмреНрдз рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрд╕реНрдХрд░рдг
рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрд╛рдбрд╝реА (^) рдпрд╛ рдЕрдиреНрдп рдкреНрд░рддреАрдХ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рднрд╡рд┐рд╖реНрдп рдХреЗ рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╣рдо рдЗрд╕реЗ рдареАрдХ рдХрд░ рджреЗрдВрдЧреЗредPHP рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдСрдЯреЛ-рд╕рдорд╛рдкрди рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛редрдЕрджреНрдпрддрди рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рд╕рдВрдХреБрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗрд╣реИрдВ composer.lock
рд╡рд╣рд╛рдБ рдХреЛрдИ рд╣реИ рдлрд╝рд╛рдЗрд▓ рдЕрднреА рддрдХ рдФрд░ рдХреЛрдИ рд╕рдВрдХреБрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ PhpStorm рдЕрдиреБрднрд╛рдЧ рдХрд╛ рдирд╛рдо рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдЧрд╛ require
рдФрд░ require-dev
ред рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╕рдВрдкрд╛рджрдХ рдХреЗ рдКрдкрд░ рдЯреВрд▓рдмрд╛рд░ рдореЗрдВ рдЗрдВрд╕реНрдЯреЙрд▓ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рдпрд╛ рддреНрд╡рд░рд┐рдд рдХреНрд▓рд┐рдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ Alt(тМе)+Enter
рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рд╕рдВрдХреБрд▓ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ.
рд▓реЗрдХрд┐рди рдпрджрд┐ рд╕рднреА рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИрдВ, рддреЛ PhpStorm рд▓рд╛рдкрддрд╛ рд▓реЛрдЧреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдЧрд╛ред рдлрд┐рд░ Alt(тМе)+Enter
рдЖрдк рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдкрд░ рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рдкреИрдХреЗрдЬ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рд╕рднреА рдкреИрдХреЗрдЬ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ редрдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдЖрдЧреЗ, рдЧреНрд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдЙрд╕ рдкреИрдХреЗрдЬ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдЧрд╛ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдФрд░ рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдкреЙрдк-рдЕрдк рд╕рдВрд╡рд╛рдж рдореЗрдВ packagist.org рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рд╕рд┐рддрд╛рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдЧреАред
PhpStorm рдкреИрдХреЗрдЬ рдФрд░ рдЙрдирдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рд░реА рдЬрд╛рдирдХрд╛рд░реА packagist.org рд╕реЗ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреИрд╢ рдХрд░рддрд╛ рд╣реИредрдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдиреЗрд╡рд┐рдЧреЗрд╢рдирдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ Ctrl(тМШ)+Click
рдФрд░ Ctrl(тМШ)+B
рдЖрдк рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВредрдЗрд╕рдореЗрдВ composer.json
рднреА рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рдЖрдк Ctrl(тМШ)+Click
рдПрдХ рдкреИрдХреЗрдЬ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЯреНрд░реА рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ рдЕрдЧрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдкрд░ рд╣реИ, рддреЛ рдпрд╣ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдЦреЛрд▓рд╛ рдЬрд╛рдПрдЧрд╛ред рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рд▓рд┐рдВрдХ рдкрд░ рдпрд╛ рдЙрд╕ рдкрд░
рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рд╕реЗ рд╡рд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЦреБрд▓ рдЬрд╛рддрд╛ рд╣реИред рдСрдЯреЛ рдкреВрд░рд╛ рдХрд░рдирд╛Ctrl(тМШ)+Click
Ctrl(тМШ)+B
composer.json
рдСрдЯреЛрд▓реЙрдб рд╕реЗрдХреНрд╢рди (-рджреЗрд╡) рдореЗрдВрдХрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдорд┐рд▓реА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдСрдЯреЛ- рдХрдореНрдкреНрд▓реАрдЯ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдиреЗрдорд╕реНрдкреЗрд╕ рдФрд░ рдкрд╛рдереНрд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреА рд╣реИред
Ctrl(тМШ)+Click
рдФрд░ Ctrl(тМШ)+B
рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдпрд╣рд╛рдБ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИредрд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрдзрд╛рд░рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдлрд╛рдЗрд▓реЛрдВ / рдлрд╝реЛрд▓реНрдбрд░реЛрдВ / рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рджреВрд╕рд░реЗ, рдЯреАрдореЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рддреАрд╕рд░рд╛, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╛рдо рдХреЗ рд╡рд┐рдкрд░реАрдд [рдкреНрд▓реЗ] рдмрдЯрди рджрдмрд╛рдХрд░ рд╕рдВрдкрд╛рджрдХ рд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЙрдиреНрдЪ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИредрдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд░рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╣реЙрдЯрдХреА рдХреЗ рд╕рд╛рде рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ Ctrl(тМГ)+R
, рдЬреЛ рдбреАрдмрдЧрд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ:
рдХреЛрдб рдЧреБрдгрд╡рддреНрддрд╛ рдЙрдкрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛рдпрджрд┐ рджреЗрд╡ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИFriendsOfPHP/PHP-CS-Fixer
, рддреЛ PhpStorm рдЬрд╛рдБрдЪ рдХрд░реЗрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдЙрдЪрд┐рдд рдирд┐рд░реАрдХреНрд╖рдг рд╕рдХреНрд╖рдо рд╣реИ рдФрд░ рдпрджрд┐ рдирд┐рдпрдо рд╕реЗрдЯ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЖрдк Alt(тМе)+Enter
рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ :
рдкреАрдПрдЪрдкреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдорд╛рди рд╕реБрдзрд╛рд░
рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЕрдиреБрдорд╛рди рдЗрдВрдЬрди PhpStorm рдХреА рдиреАрдВрд╡ рд╣реИ, рдФрд░ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХреБрдЫ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рдЧрдП рд╣реИрдВредрдПрдХреНрд╕реНрдЯреНрд░рд╛ рдЯреИрдЧ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧрд╡рд░@var
PhpStorm рдХреЛ рдПрдХ рдЪрд░ рдХрд╛ рдкреНрд░рдХрд╛рд░ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреИрдЧ рдЬреЛрдбрд╝рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╣рдо рд▓рдЧрд╛рддрд╛рд░ рдЯрд╛рдЗрдк рдЗрдВрдлрд╝реЗрдХреНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдШреЛрд╖рдгрд╛рдПрдБ рдирд┐рд░рд░реНрдердХ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ PhpStorm рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдЬрд╛рдирддрд╛ рд╣реИредрдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдЙрдиреНрд╣реЗрдВ рддреНрд╡рд░рд┐рдд рдлрд┐рдХреНрд╕ Alt(тМе)+Enter
-> "рдирд┐рдХрд╛рд▓реЗрдВ" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИрд╡рд░" :
рдЕрд╢рдХреНрдд рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдирд╛ рдПрдХ рдореБрд╢реНрдХрд┐рд▓ рдХрд╛рдо рд╣реИ, рдФрд░ рдРрд╕реА рдЬрдЧрд╣реЗрдВ рдереАрдВ рдЬрд╣рд╛рдБ PhpStorm рдЗрд╕реЗ рд╕рдВрднрд╛рд▓ рдирд╣реАрдВ рд╕рдХрд╛ред рдЕрдм 2020.1 рдореЗрдВ PhpStorm рдХреЛ рдкрддрд╛ рд╣реИ рдХрд┐ рдХрдм рдПрдХ рдЪрд░ рд╢реВрдиреНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХрдм рдирд╣реАрдВредрдпрд╣рд╛рдВ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ:
рдПрдХ рдЖрд░рдВрднрд┐рдХ рд╕рд░рдгреА рдХреЗ рд▓рд┐рдП рдСрдЯреЛ-рдкреВрд░рд╛ рдХрд░рдирд╛рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЬреНрдЮрд╛рдд рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд░рдгреА рд╣реИ, рдФрд░ рдмрд╛рдж рдореЗрдВ рдЖрдк рдЗрд╕реЗ рдЦрддреНрдо рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рд╕реНрд╡рддрдГ рдкреВрд░реНрдгрддрд╛ рдпрд╣рд╛рдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рдереА, рдХреНрдпреЛрдВрдХрд┐ рдЯрд╛рдЗрдк рдЬрд╛рдирдХрд╛рд░реА рдЦреЛ рдЧрдИ рдереАред 2020.1 рдореЗрдВ, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
array_map / array_filter рдореЗрдВ рд╕реНрд╡рддрдГ рдкреВрд░реНрдгрддрд╛редрдХреНрд▓реЛрдЬрд░ рдХрд╛ рд╢рд░реАрд░, рдЬреЛ array_map () рдФрд░ array_filter () рдлрдВрдХреНрд╢рдВрд╕ рдореЗрдВ рдкрд╛рд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдм рддрд░реНрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
PCOV рдФрд░ PHPDBG рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдХреЛрдб рдХрд╡рд░реЗрдЬ
рдЖрдк Xdebug рдХреЗ рд╕рд╛рде рдХреЛрдб рдХрд╡рд░реЗрдЬ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ ред рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдпрд╣ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдбрд┐рдмрдЧрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдореЗрдВ рд╕рднреНрдп рдУрд╡рд░рд╣реЗрдб рд╣реИред рдПрдХ рдХрд╡рд░реЗрдЬ рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЕрдзрд┐рдХ рд╣рд▓реНрдХреЗ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдХреНрд░рд╛рдХреЛрдЬреЛ / рдкреАрд╕реАрдУрд╡реА рд╡рд┐рд╕реНрддрд╛рд░ рдпрд╛ рдкреАрдПрдЪрдкреАрдбреАрдмреАрдЬреА PHP 5.6+ рдореЗрдВ рдирд┐рд░реНрдорд┐рддредрджреЛрдиреЛрдВ рдЕрдм PhpStorm рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред рдЖрдкрдХреЛ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд░рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рдХрд╡рд░реЗрдЬ рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдлрд┐рд░ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдХрд╡рд░реЗрдЬ рдЧрдгрдирд╛ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдВ
:
README рдореЗрдВ Xdebug, PCOV рдФрд░ phpdbg рдХреЗ рдмреАрдЪ рдХрд╡рд░реЗрдЬ рдЧрдгрдирд╛ рдореЗрдВ рдЕрдВрддрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ ред
PHPUnit рдЯреВрд▓рдХрд┐рдЯ
рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЬрд╛рд░реА PHPUnit 9 (рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 9.1) рдореЗрдВ, рдХрдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдирд┐рд░реАрдХреНрд╖рдг рдФрд░ рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЬреЛрдбрд╝рд╛ред
рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдкрд░реАрдХреНрд╖рдг рдмрдирд╛рдПрдВ рдХрдХреНрд╖рд╛ рдШреЛрд╖рдгрд╛ рдкрд░рдХреЙрд▓ Alt(тМе)+Enter
рдХрд░рдХреЗ рдФрд░ рдмрдирд╛рдПрдБ рдиреНрдпреВ PHP рдЯреЗрд╕реНрдЯ рдХрд╛ рдЪрдпрди рдХрд░рдХреЗ рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХрдВрдХрд╛рд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореЗрдЯрд╛рдбрд╛рдЯрд╛
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ .phpstorm.meta.php
PhpStorm рдХреЛ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЬрд┐рд╕рд╕реЗ рдХреЛрдб рдкреВрд░рд╛ рд╣реЛрдиреЗ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд┐рдореНрдлрдиреА рдкреНрд▓рдЧрдЗрди рдФрд░ рд▓рд╛рд░рд╡реЗрд▓ рдЖрдИрдбреАрдИ рд╣реЗрд▓реНрдкрд░ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ редрдЖрдк PHP рд░рд┐рдкреЛрд░реНрдЯ рд╕реЗ PHP рд░реВрд╕ 2019 рдкрд░ PhPStorm рдХреЗ рд╡рд┐рдХрд╛рд╕ рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ ред
PhpStorm 2020.1 рдиреЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕реБрдзрд╛рд░ рдЬреЛрдбрд╝реЗ рд╣реИрдВредрдкреИрд░рд╛рдореАрдЯрд░ рдЗрдВрдбреЗрдХреНрд╕ рдирд┐рд░реНрджреЗрд╢рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдУрд╡рд░рд░рд╛рдЗрдб, рдореИрдк рдФрд░ рдЯрд╛рдЗрдк рдХрд░рддрд╛ рд╣реИoverride()
, map()
рдФрд░ type()
рдЖрдк рдкрд╣рд▓реЗ рддрд░реНрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред PhpStorm 2020.1 рдореЗрдВ, рдЖрдк рдПрдХ рдордирдорд╛рдирд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдЗрдВрдбреЗрдХреНрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
__get рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдпрджрд┐ рдЖрдкрдиреЗ рдЬрд╛рджреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдкрддреНрддрд┐ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рд╣реИ __get()
, рддреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдЦреЛ рдЧрдИ рдереАред рдЕрддрд┐рд░рд┐рдХреНрдд рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛ @var
рдпрд╛ @property
, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рдирд╣реАрдВ рдмрдЪрд╛ред рдЕрдм рдЖрдк рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдм рдХреБрдЫ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред ArrayAccess
Metadata рдХреЛ
рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рд╕реНрд╡рдд: рдкреВрд░реНрдг рд╣реЛрдирд╛ArrayAccess рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИред рдЕрдм рд╕рдВрднрд╡ рдХреБрдВрдЬрд┐рдпрд╛рдБ рднреА рд╕реНрд╡рдд: рдкреВрд░реНрдг рд╣реЛ рд░рд╣реА рд╣реИрдВред
рдХрд╕реНрдЯрдо рдирд┐рдХрд╛рд╕ рдмрд┐рдВрджреБрдУрдВPhpStorm рдкреНрд░рдХрд╛рд░ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ die()
рдФрд░ exit()
рдпрд╛ рдкреВрд░реНрдг рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХред рд▓реЗрдХрд┐рди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдирд┐рдХрд╛рд╕ рдмрд┐рдВрджреБ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддрд░реНрдХ E_USER_ERROR рдХреЗ рд╕рд╛рде рд╕рд░рд▓ dd()
рдпрд╛ рдЯреНрд░рд┐рдЧрд░_рд░реЛрд░ рдлрд╝рдВрдХреНрд╢рди ред PhpStorm 2020.1 рдореЗрдВ, рдЖрдк рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдПрдХреНрдЬрд╝рд┐рдЯ рдкреЙрдЗрдВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рддрджрдиреБрд╕рд╛рд░ рдкреНрд░рд╡рд╛рд╣ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░реЗрдЧрд╛ред рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ
рдШреЛрд╖рдгрд╛рдкрддреНрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░реНрдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреНрд░рддреАрдХ рдЬрд┐рдирдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ , рдпрд╛ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдПрдХ рдЖрдЗрдХрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдЗрдХрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЦреБрд▓ рдЬрд╛рдПрдЧреА рдЬрд┐рд╕рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрдИ рдлрд╛рдЗрд▓реЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред
override()
exitPoint()
expectArguments()
.phpstorm.meta.php
рдкреНрд░рддреАрдХ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ / рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЫрд┐рдкреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ | рд╕рдВрдкрд╛рджрдХ | рд╕рд╛рдорд╛рдиреНрдп | рдЧрдЯрд░ рдЖрдЗрдХреЙрди редрдРрдб-рдСрди рдХреА рд╕реВрдЪреА рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╢реАрди рд╕реАрдЦрдирд╛
рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдСрдЯреЛ-рдкреВрд░реНрдг рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд░реИрдВрдХрд┐рдВрдЧ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛редрдПрдХреНрд╢рди рдореЗрдВ ML рдХреИрд╕реЗ рджреЗрдЦреЗрдВ?рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдСрдЯреЛ-рд╕рдорд╛рдкрди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЕрдХреНрд╖рдо рд╣реИред рд╣рдо рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рдХрд┐ рд░реЛрдмреЛрдЯ рд╣рдорд╛рд░реЗ рдХрд╛рдо рдХреЛ рд▓реВрдЯреЗ! рдЗрд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╡рд░реАрдпрддрд╛рдПрдБ / рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрд░ рдЬрд╛рдПрдБ | рд╕рдВрдкрд╛рджрдХ | рд╕рд╛рдорд╛рдиреНрдп | рдХреЛрдб рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ рдФрд░ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдФрд░ рдкреАрдПрдЪрдкреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рдХрд▓реНрдк рд░реИрдВрдХ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ редрдпрджрд┐ рдЖрдк рд╡рд┐рдХрд▓реНрдк рдХреЛ рдкреВрд░реНрдг рдкреЙрдкрдЕрдк рдореЗрдВ рд╕реНрдерд┐рддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рднреА рд╕рдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВ , рддреЛ рд╕реНрд╡рдд: рдкреВрд░реНрдг рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕реВрдЪреА рджрд┐рдЦрд╛рдПрдЧреА рдХрд┐ рддрддреНрд╡реЛрдВ рдХрд╛ рдХреНрд░рдо рдХреИрд╕реЗ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред
рд╣рдо рднрд╡рд┐рд╖реНрдп рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реЛрдВ рдХреЗ рдЙрддреНрдерд╛рди рдХреЛ рд░реЛрдХрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ редрдирдпрд╛ рдирд┐рд░реАрдХреНрд╖рдг
рдПрдХ рдирд┐рдЬреА рд╕рдВрдкрддреНрддрд┐ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЪрд░ рд╣реЛ рд╕рдХрддреА рд╣реИредрдПрдХ рд╕рдВрдкрддреНрддрд┐ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдпрджрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рдзрд┐ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рддреБрд░рдВрдд рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░ рдХреЛ Alt(тМе)+Enter
"рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдкрддреНрддрд┐ рдмрджрд▓реЗрдВ" рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ ред
рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрдкрддреНрддрд┐ рдХреА рд╢реБрд░реБрдЖрддрдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдПрдХ рдирд┐рдЬреА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдПрдХ рд╡рд░реНрдЧ рдореЗрдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореВрд▓реНрдп рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рдореЗрдВ рдЗрд╕реЗ рддреБрд░рдВрдд рджреВрд╕рд░реЗ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдирд┐рд░рд░реНрдердХ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рд╢реЛрд░ рдЬреЛрдбрд╝рддрд╛ рд╣реИредрдПрдХ рдЕрдкреНрд░рдпреБрдХреНрдд рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝рд░ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдЗрд╕реЗ рдПрдХ рддреНрд╡рд░рд┐рдд рдлрд╝рд┐рдХреНрд╕ Alt(тМе)+Enter
"рдЕрдирд╛рд╡рд╢реНрдпрдХ рдирд┐рд░реВрдкрдХ рдирд┐рдХрд╛рд▓реЗрдВ" рдХреЗ рд╕рд╛рде рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред
PHP рдХреЗ рдЧреБрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдореЗрдВ рдмрджрд▓ рджреЗрдВ
рдирд┐рд░рд░реНрдердХ рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░PhpStorm рддреБрдЪреНрдЫ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдЧрд╛ рдФрд░ рдПрдХ рддреНрд╡рд░рд┐рдд рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде Alt(тМе)+Enter
рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╕рд░рд▓ рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:
рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рдирд┐рд░рд░реНрдердХ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рд╕рдВрджрд░реНрднрджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣реА рдПрдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдирд┐рдХрд┐рддрд╛ рдкреЛрдкреЛрд╡ рдиреЗ рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рд╕реНрдкрд╖реНрдЯ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ред PHP рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИредрдЗрд╕ рдмреАрдЪ, PhpStorm 2020.1 рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рдкрд╛рд░рд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрд╕ рддрд░рд╣ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдЬрд▓реНрджреА рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ Alt(тМе)+Enter
ред
рд╡рд╣реА рдлрд╝реЙрд░реЗрд╕реНрдЯ рд▓реВрдк рдореЗрдВ рдПрдХ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛:
рдЕрддрд┐рд░рд┐рдХреНрдд PHPDoc рдХреЛ рд╣рдЯрд╛ рджреЗрдВ , рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛ рднреА рдЕрдм рд╕рдВрдмрдВрдзрд┐рдд рддреНрд╡рд░рд┐рдд рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред
рд╕рд╣реА рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдирд┐рд░реАрдХреНрд╖рдг рдЬрд╛рдирдХрд╛рд░реА рд╕реНрддрд░ рдкрд░ рд╣реИ , рдЕрд░реНрдерд╛рдд, рдпрд╣ рдЙрдЬрд╛рдЧрд░ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рдирд┐рд░рд░реНрдердХ PHPDoc рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рдирд┐рд░рд░реНрдердХ PHPDoc рдЯрд┐рдкреНрдкрдгреА рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░реЗрдВ | рд╕рдВрдкрд╛рджрдХ | рдирд┐рд░реАрдХреНрд╖рдг, рдХрдордЬреЛрд░ рдЪреЗрддрд╛рд╡рдиреА рд╕реНрддрд░ рдпрд╛ рдЙрдЪреНрдЪрддрд░ рд╕реЗрдЯ рдХрд░реЗрдВ ред"рд░реА рдореВрд╡ рдореЗрдердб" рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛
рдХрднреА-рдХрднреА рдПрдХ рд╡рд┐рдзрд┐ рдХреЛ рджреВрд╕рд░реА рдХрдХреНрд╖рд╛ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдореЗрдВ рдХрдИ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ PhpStorm рдпрд╣рд╛рдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИредрдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╡рд┐рдзрд┐ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рдерд╛, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдерд╛ред PhpStorm 2020.1 рдореЗрдВ, "рдореВрд╡ рдореЗрдердб" рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЛ рдПрдХрд▓ рдкрд░рдорд╛рдгреБ рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрддрд┐рд░рд┐рдХреНрдд рдЪрд░рдгреЛрдВ рдФрд░ рдкреЙрдк-рдЕрдк рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╕рдм рдХреБрдЫ рдПрдХ рдмрд╛рд░ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредрдПрдХ рд╡рд┐рдзрд┐ рдкрд░ рд╣реЛрд╡рд░ рдХрд░реЗрдВ рдФрд░ рджрдмрд╛рдПрдВ F6
(рдпрд╛ Ctrl+T
, 3
)ред рдлрд┐рд░ рд▓рдХреНрд╖реНрдп рд╡рд░реНрдЧ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдЖрдкрдХрд╛ рдХрд╛рдо рд╣реЛ рдЧрдпрд╛ред
рд╕рднреА рдЙрдкрд▓рдмреНрдз рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП , рдЖрдк Ctrl+T
рдХреЛрдб рдореЗрдВ рдХрд╣реАрдВ рднреА рдХреНрд▓рд┐рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред
HTTP рдХреНрд▓рд╛рдЗрдВрдЯ рдореЗрдВ PHP рдбрд┐рдмрдЧ
рдЕрдм, рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЛ рдЪреБрдирд┐рдВрджрд╛ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрдиреБрд░реЛрдз рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рдкрд░реЗрд╢рд╛рди рд╣реЛрдиреЗ рдпрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ HTTP рдЕрдиреБрд░реЛрдз рдмрдирд╛рдиреЗ .http
рдФрд░ PHP рдбреАрдмрдЧ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ , рдЬреЛ рдореЗрдиреВ рдореЗрдВ Alt(тМе)+Enter
рдпрд╛ рдЖрдЗрдХрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЙрдкрд▓рдмреНрдз рд╣реИ ред рдирддреАрдЬрддрди, рдПрдХ рдХреБрдХреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдЬреЛрдбрд╝ рджреА рдЬрд╛рдПрдЧреА XDEBUG_SESSION
ред
рдФрд░ PHP рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдЫреЛрдЯреА рдЪреАрдЬреЗрдВ
@ рд╣рдЯрд╛рдП рдЧрдП рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрд░рдЪрдирд╛ рдЯреНрд░реА рджреГрд╢реНрдп рдореЗрдВ рдкрд╛рд░ рдХрд┐рдП рдЧрдПCtrl(тМШ)+F12
рдорд┐рд▓рд╛рди рдЯреИрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ <? php?>> рдЯрд╣рдиреА рдХреЗ рд▓рд┐рдП
рдмреНрд░реИрдХреЗрдЯ рдЦреЛрд▓рдиреЗ / рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреВрджреЗрдВред
рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдЯрд╣рдиреА рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдЯреИрдЧ рд╡рд░реНрдг рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рднреА рдХреЛрдгреАрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рд╣реА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ред рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ / рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ | рднрд╛рд╖рд╛рдПрдБ рдФрд░ рд░реВрдкрд░реЗрдЦрд╛ | PHP | рдЯрд╣рдиреА редShift+Ctrl+M (тМГ+M)

рдЖрдИрдбреАрдИ
рдЧреНрд░реИрдЬреА рдПрдбрд╡рд╛рдВрд╕реНрдб рд╕реНрдкреЗрд▓рд┐рдВрдЧ рдПрдВрдб рдЧреНрд░рд╛рдорд░
рдЧреНрд░рд╛рдЬрд╝реА рдкреНрд▓рдЧрдЗрди рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ PhpStorm рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬреЛ рди рдХреЗрд╡рд▓ рд╡рд░реНрддрдиреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдмрд▓реНрдХрд┐ рд╡реНрдпрд╛рдХрд░рдг рдФрд░ рд╢реИрд▓реА рдХреЗ рд▓рд┐рдП рдкрд╛рда рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, 16 рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╕рднреА рдЪреЗрдХ рдЖрдкрдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдХрд╣реАрдВ рднреА рднреЗрдЬреЗ рдмрд┐рдирд╛ рд╕реНрдерд╛рдиреАрдп рд╕реНрддрд░ рдкрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЪреЗрдХ рдорд╛рд░реНрдХрдбрд╛рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рд╣реИрдВредрдЖрдк рдЙрдиреНрд╣реЗрдВ рд╕рднреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢рд╛рдмреНрджрд┐рдХ, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ, PHPDoc рдмреНрд▓реЙрдХ, рдФрд░ рдкреНрд░рддрд┐рдмрджреНрдз рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рднреА рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВредPHP рдХреЗ рд▓рд┐рдП, рдЖрдк Settings / Preferences рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ | рд╕рдВрдкрд╛рджрдХ | рдкреНрд░реВрдлреЗрдб | рд╡реНрдпрд╛рдХрд░рдг редрд▓рд╛рдЗрдЯрдПрдбрд┐рдЯ рдореЛрдб
рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рджреЗрдЦрдиреЗ / рдареАрдХ рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдВрдкреВрд░реНрдг IDE рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рдмреИрдХрд▓рд╛рдЗрдЯ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ рд╣рдо рд▓рд╛рдЗрдЯрд╡реЗрдЯ рд▓рд╛рдЗрдЯрд┐рдЯ рдореЛрдб рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВредрдпрд╣ рдЗрд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рдпрджрд┐ рдЖрдк рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдпрд╛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ PhpStorm рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдлрд╝рд╛рдЗрд▓ рд▓рд╛рдЗрдЯрдПрдбрд┐рдЯ рдореЗрдВ рдЦреБрд▓ рдЬрд╛рдПрдЧреАред рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдПрдХ рдкреВрд░реНрдг-PhpStorm рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рдлрд╝рд╛рдЗрд▓ рдмрд╕ рдЗрд╕рдореЗрдВ рдЦреБрд▓ рдЬрд╛рдПрдЧреАред
JetBrains рдореЛрдиреЛ - рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлрд╝реЙрдиреНрдЯ

рдЬрд╝реЗрди рдореЛрдб
рдирдпрд╛ рдореЛрдб рдХреЛрдб рдореЗрдВ рдЧрд╣рд░реА рд╡рд┐рд╕рд░реНрдЬрди рдХреЗ рд▓рд┐рдП рдбрд┐рд╕реНрдЯреНрд░реЗрдХреНрд╢рди рдлреНрд░реА рдФрд░ рдлреБрд▓рд╕реНрдХреНрд░реАрди рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИредрджреЗрдЦреЗрдВ | рд╕реВрд░рдд | рдЬрд╝реЗрди рдореЛрдб рджрд░реНрдЬ рдХрд░реЗрдВ
рдЗрдВрдЯрд░рдлреЗрд╕
рдЯрд░реНрдорд┐рдирд▓ рд╡рд┐рдВрдбреЛ рд╡рд┐рднрд╛рдЬрд┐рдд
рдирдП рдЯреИрдм рдЦреЛрд▓рдиреЗ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЕрдм рдЖрдк рд╕реНрдХреНрд░реАрди рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдЯреИрдм рдореЗрдВ рдХрдИ рд╕рддреНрд░ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЯрд░реНрдорд┐рдирд▓ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХреНрд╖реИрддрд┐рдЬ / рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдЪреБрдиреЗрдВ ред
рдЗрдВрдЯреЗрд▓реАрдЬ рд▓рд╛рдЗрдЯрдереАрдо рд▓рд╛рдЗрдЯ рдереАрдо рдХреЛ рд╕рднреА рдУрдПрд╕ рдкрд░ рд╕рдорд╛рди рджрд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдЕрджреНрдпрддрди рдФрд░ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдирд╛рдо рдмрджрд▓рдХрд░ рдЗрдВрдЯреЗрд▓реАрдЬ рд▓рд╛рдЗрдЯ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ редрд╕реНрдерд┐рддрд┐ рдкрдЯреНрдЯреА рдХрд╛ рдЕрдиреБрдХреВрд▓рдирд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ, рдЖрдк рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдкрд░ рдХреМрди рд╕реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рдПрдЧреАред
рд╡рд┐рдиреНрдпрд╛рд╕
рдПрдХреАрдХреГрдд SSH рд╡рд┐рдиреНрдпрд╛рд╕
рдкрд╣рд▓реЗ, рдЕрдЧрд░ рдПрдХ рддреИрдирд╛рддреА, рд░рд┐рдореЛрдЯ рджреБрднрд╛рд╖рд┐рдпрд╛, рдпрд╛ рдПрд╕рдПрд╕рдПрдЪ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдПрдХ рдПрд╕рдПрд╕рдПрдЪ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЗрд╕реЗ рд╣рд░ рдмрд╛рд░ рдкреБрди: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдерд╛редрдЕрдм рд╕рднреА SSH рдХрдиреЗрдХреНрд╢рди рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ / рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЬреЛрдбрд╝рд╛ / рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ | рдЙрдкрдХрд░рдг | SSH рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди , рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдмрд╛рд░-рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд╣рд╛рдБ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
IDE рдХреЙрдиреНрдлрд╝рд┐рдЧ рдХрд╛ рдкрде рдмрджрд▓ рдЧрдпрд╛ рд╣реИ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, macOS рдкрд░:- ~/Library/Preferences/PhpStorm2019.3
+ ~/Library/Application Support/JetBrains/PhpStorm2020.1
рдорджрдж
рдореЗрдВ рдЕрдзрд┐рдХ редрд░рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдкрде
рдкрд╣рд▓реЗ, рд░рди-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ .idea
рдЬреЛ рдХрдИ рдкреВрд░реА рддрд░рд╣ рд╕реЗ .gitignore ( рдЗрд╕ рддрд░рд╣ рдмреЗрд╣рддрд░ ) рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ ред рдЕрдм рдЖрдк рдХрд┐рд╕реА рднреА рдкрде рдХреЛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд░рди-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВредрдирдП рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЛ рдСрдирдмреЛрд░реНрдб рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ: рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЦреАрдВрдЪрд╛ рдЧрдпрд╛, рдПрдХ рдмрдЯрди рдХреЗ рд╕рд╛рде рд▓реЙрдиреНрдЪ рдХрд┐рдП рдЧрдП PhpStorm рдореЗрдВ рдЦреЛрд▓рд╛ рдЧрдпрд╛редрдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рди / рдбрд┐рдмрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдВрд╡рд╛рдж рдореЗрдВ рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдЯреЛрд░ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ , рдФрд░ рдЧрд┐рдпрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рдкрде рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг
рдирдИ рдХрдореЗрдЯреА
рдкреНрд░рддрд┐рдмрджреНрдз рд╡рд┐рдВрдбреЛ рдЧреИрд░-рдореЛрдбрд▓ рдореЛрдб рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ рдФрд░ рдмрд╛рдИрдВ рдУрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреА рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрд╣ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛рдУрдВ рдХреА рддреИрдпрд╛рд░реА рдХреЗ рджреМрд░рд╛рди рдЕрдиреНрдп рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдХрд╛рдо рдХреЛ рдЕрд╡рд░реБрджреНрдз рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд╕реНрдХреНрд░реАрди рдкрд░ рд░рдЦреА рдЬрд╛рддреА рд╣реИредрдирдИ рдХрдорд┐рдЯ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЪрд╛рд▓реВ рд╣реИ рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдВрдж рд╣реИ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА PhpStorm рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдкреНрд░реЗрдлрд░реЗрдВрд╕ / рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдиреЙрди-рдореЛрдбрд▓ рдХрдорд┐рдЯ рдЗрдВрдЯрд░рдлреЗрд╕рдСрдкреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд╕рдХреНрд╖рдо рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг | рдХрдореЗрдЯреА ред
Git Branch рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯреНрд╕
рдЖрдИрдбреАрдИ рд╡рд┐рдВрдбреЛ рдХреЗ рдирд┐рдЪрд▓реЗ рджрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ, рд╡рд░реНрддрдорд╛рди рдЧрд┐рдЯ рд╢рд╛рдЦрд╛ рдЗрдВрдЧрд┐рдд рдХреА рдЧрдИ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╡реАрд╕реАрдПрд╕ | рдЧрд┐рдЯ | рдПрдХ рд╢рд╛рдЦрд╛ редрдпрд╣рд╛рдВ рд╣рдордиреЗ рдПрдХ рдЦреЛрдЬ рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝реАред рд░реАрдлреНрд░реЗрд╢ рдмрдЯрди рджреВрд░рд╕реНрде рд╢рд╛рдЦрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдХреЛ рдЕрджреНрдпрддрди рдХрд░рддрд╛ рд╣реИред рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рддрд┐рдмрджреНрдз рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдВрдХреЗрддрдХ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ: рдЗрдирдХрдорд┐рдВрдЧ (рдиреАрд▓рд╛) рдпрд╛ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ (рд╣рд░рд╛)ред
рдкреБрди: рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рд░рд┐рдмреЗрд╕
Git Rebase рдЖрдкрдХреЛ рдХрдорд┐рдЯ рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рджреЗрддрд╛ рд╣реИред рдЕрдм рдЖрдк рдЬрд▓реНрджреА рд╕реЗ "рдЕрд╕реНрдерд╛рдпреА" рдХрдорд┐рдЯреНрд╕ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рдВрджреЗрд╢ рдХреЛ рд╕рд╣реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдХрдорд┐рдЯреНрд╕ рдХрд╛ рдЖрджреЗрд╢ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдпрд╣ рд╕рдм рдХрдВрд╕реЛрд▓ рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди PhpStorm рдЖрдкрдХреЛ рддреБрд░рдВрдд рдпрд╣ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░рддрд┐рдмрджреНрдз рдореЗрдВ рдХреНрдпрд╛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИредрд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдорд┐рдЯреНрд╕ рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдореЗрдВ, рдЖрдкрдХреЛ рд╡рд╛рдВрдЫрд┐рдд рдореВрд▓ рдкреНрд░рддрд┐рдмрджреНрдз рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдФрд░ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ рдпрд╣рд╛рдВ рд╕реЗ рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рд░реАрдмреЗрд╕ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ред
DB рдЙрдкрдХрд░рдг
PhpStorm
рдореЗрдВ DataGrip рдХреА рд▓рдЧрднрдЧ рд╕рднреА рд╕реБрд╡рд┐рдзрд╛рдПрдБ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ , рддрд╛рдХрд┐ рдЖрдк рд╣рдорд╛рд░реЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рд╕реЗ DataGrip 2020.1 рд░рд┐рд▓реАрдЬрд╝ рдХреА рд╕рдореАрдХреНрд╖рд╛ рджреЗрдЦ рд╕рдХреЗрдВ редрд╡реЗрдм
рдФрд░, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рд╡реЗрдмрд╕реНрдЯреЙрд░реНрдо 2020.1 рдХреЗ рд╕рднреА рдЕрдкрдбреЗрдЯ рднреА PhpStorm рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ редрдкрд░рд┐рд╡рд░реНрддрди рдХреА рдПрдХ рдкреВрд░реА рд╕реВрдЪреА рдмрд╣реБрдд рдмрдбрд╝реЗ рд░рд┐рд▓реАрдЬ рдиреЛрдЯреЛрдВ рдореЗрдВ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ редрдЖрдк " рдирдпрд╛ рдХреНрдпрд╛ рд╣реИ " рдкреЗрдЬ рдкрд░ рд░рд┐рд▓реАрдЬ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдХреБрдЫ рд╣реА рдорд┐рдирдЯ рд╣реИрдВ, рддреЛ рдпрд╣рд╛рдВ рдПрдХ рдЫреЛрдЯреА рд╡реАрдбрд┐рдпреЛ (рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ) рд░рд┐рд▓реАрдЬ рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рд╣реИ:рдФрд░ рдпрд╣ рд╕рдм рдЗрд╕ рд╕рдордп рд╣реИ рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рд╣рдореЗрдВ рдкреНрд░рд╢реНрдиреЛрдВ, рдЗрдЪреНрдЫрд╛рдУрдВ, рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рд┐рд░реНрдл рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАредрдЕрдкрдирд╛ рдЦреНрдпрд╛рд▓ рд░рдЦрд╛ рдХрд░реЛ!рдЖрдкрдХреА JetBrains PhpStorm рдЯреАрдо