
рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░! рд╣рдо рдЖрдкрдХреЛ рдЗрд╕ рд╡рд░реНрд╖ PhpStorm рдХреА рджреВрд╕рд░реА рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬ рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдХреГрдкрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ!
рд░рд┐рд▓реАрдЬ рдХрд╛ рдЕрд╡рд▓реЛрдХрди " рдирдпрд╛ рдХреНрдпрд╛ рд╣реИ " рдкреЗрдЬ рдкрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдХрдЯреМрддреА рдХреЗ рддрд╣рдд, рд╕рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╢реНрд▓реЗрд╖рдгред (рд╕рд╛рд╡рдзрд╛рдиреА - рдмрд╣реБрдд рд╕рд╛рд░реА рддрд╕реНрд╡реАрд░реЗрдВ!)
рдЖрдк рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдпрд╛ рдЯреВрд▓рдмреЙрдХреНрд╕ рдРрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, 30-рджрд┐рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдЙрдкрд▓рдмреНрдз рд╣реИред рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ PhpStorm рдпрд╛ All Products рдкреИрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдХреНрд░рд┐рдп рд╕рджрд╕реНрдпрддрд╛ рдХреЗ рдзрд╛рд░рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдореБрдХреНрдд рдЫрд╛рддреНрд░ рдФрд░ рдУрдкрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
PHP 7.4: рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдЧреБрдг
PHP 7.0 рдХреЗ рдмрд╛рдж рд╕реЗ PHP 7.4 рд╕рдмрд╕реЗ рд╢рд╛рдирджрд╛рд░ рдФрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛ рд╕рдВрдкрдиреНрди рд░рд┐рд▓реАрдЬрд╝ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реИ! рдЗрд╕рдореЗрдВ рд╕реНрд╡реАрдХреГрдд рд╕рднреА RFC рдХреЛ рджреЗрдЦреЗрдВ ред
рд╕рдмрд╕реЗ рдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдЧреБрдг рд╣реИрдВ , рдФрд░ PhpStorm 2019.2 рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ! рдЬрд┐рд╕рдореЗрдВ рдмреИрдХрд▓рд╛рдЗрдЯ, рдЖрдЙрдЯрдкреБрдЯ рдФрд░ рдкреНрд░рдХрд╛рд░ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди, рд╕рд╛рде рд╣реА рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЪреЗрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдпрджрд┐ рдЖрдк рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рдХреБрдЫ рдбрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ PhpStorm рдЖрдкрдХреЛ рддреБрд░рдВрдд рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдЧрд╛ред

рд▓реЗрдХрд┐рди PHP 7.4 рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреА рддреИрдпрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдЬрд┐рд╕реЗ рдирд╡рдВрдмрд░ рдХреЗ рдЕрдВрдд рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, PhpStorm рдореЗрдВ рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░ рд╣реИрдВред рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ рдкрд░ Alt+Enter
рджрдмрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП Add рдШреЛрд╖рд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред PhpStorm PHPDoc рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░реЗрдЧрд╛, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдпрд╛ рдПрдХ рддрд░реНрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛ рдЕрдЧрд░ рд╕рдВрдкрддреНрддрд┐ рдПрдХ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрдВрдЬреЗрдХреНрдЯ рдХреА рдЬрд╛рддреА рд╣реИред

?? = рдСрдкрд░реЗрдЯрд░ (рдЕрд╢рдХреНрдд рдореЛрдЯреЗ рдХрд╛рдо)
рдирдпрд╛ рд▓рдШреБ рдирд▓ рдЪреЗрдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рднрд╛рд░реА рднрд╛рд╡ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред
PhpStorm рдореЗрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдПрдХ рддреНрд╡рд░рд┐рдд рдлрд┐рдХреНрд╕ Alt+Enter
рд╣реИ рддрд╛рдХрд┐ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ ??
рдЬрд╣рд╛рдБ рд╕рдВрднрд╡ рд╣реЛ:

рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рд╡рд┐рдШрдЯрди рдСрдкрд░реЗрдЯрд░ (...)
PHP рдПрдХ рдСрдкрд░реЗрдЯрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдЕрдирдкреИрдХрд┐рдВрдЧ рддрд░реНрдХреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ тАж
рд╕рдВрд╕реНрдХрд░рдг 5.6 рд╕реЗред PHP рдХреА рдЖрдЧрд╛рдореА рд░рд┐рд▓реАрдЬ рдореЗрдВ, рдСрдкрд░реЗрдЯрд░ рдХреЛ рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

PhpStorm рд╢реБрджреНрдзрддрд╛ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдЧрд╛ рдФрд░ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ рдЖрдк рдХреЗрд╡рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдпрд╛ рдЯреНрд░реИрд╡рд░реНрд╕реЗрдмрд▓ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ PHP рджреБрднрд╛рд╖рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдХреБрдЫ рдЧрд▓рддреА рд╕реЗ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рди рдХрд░реЗрдВ:

PhpStorm 2019.3 рдХреА рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ рдореЗрдВ, рд╣рдо рд╕рднреА рдирдП PHP 7.4 рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдФрд░ рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рддреАрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕, рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╢рд╛рдмреНрджрд┐рдХ рдореЗрдВ рд╕реАрдорд╛рдВрдХрдХ рдЖрджрд┐ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
PHP рдореЗрдВ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдСрдЯреЛ-рдЗрдВрдЬреЗрдХреНрд╢рди
PhpStorm рдХреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ, PHP рдХреЛрдб рдореЗрдВ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ рдФрд░ рдирд┐рдпрдорд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рддрд░рд╣ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреА рд╣реИрдВред рдмреЗрд╢рдХ, рдЖрдк RegExp рднрд╛рд╖рд╛ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдиреЗ рдЗрд╕реЗ рдкреВрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред
PhpStorm 2019.2 PHP рдореЗрдВ рдирд┐рдпрдорд┐рдд рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рддрд╛ рд╣реИ! рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрд╣рд╛рдВ рдХреЛрдб рдореЗрдВ preg_*,
рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ preg_*,
рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╡реИрдзрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рдПрдЧреАред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдм рдЖрдк рдЖрдИрдбреАрдИ рдореЗрдВ рд╕реАрдзреЗ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ! рдЯреЗрдореНрдкрд▓реЗрдЯ рдкрд░ рд╣реЛрд╡рд░ рдХрд░реЗрдВ, Alt+Enter
рдФрд░ рдЪреЗрдХ RegExp рдХреЙрд▓ рдХрд░реЗрдВ ред

рдлреНрд▓рд╛рдИ рдкрд░ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЛрдб
PhpStorm рдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдвреВрдБрдврдирд╛ рд▓рдЧрднрдЧ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдореЗрдиреВ рдХреЛрдб рдореЗрдВ тЖТ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдкрддрд╛ рд▓рдЧрд╛рдПрдБред рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рдЕрднреА рддрдХ рдЖрдЬрд╝рдорд╛рдпрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдПрдБ - рдФрд░ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реЛ рдЬрд╛рдПрдВ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХрд┐рддрдиреЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ!
рдЗрд╕ рд░рд┐рд▓реАрдЬ рдореЗрдВ, рджреЛрд╣рд░рд╛рд╡ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдПрдХ рдирдП рд╕реНрддрд░ рдкрд░ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдордХреНрдЦреА рдХреЗ рдЕрдзрд┐рдХрд╛рд░ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдмрд╛рд░-рдмрд╛рд░ рдирдХрд▓ рдХреА рдпрд╛ рдЧрд▓рддреА рд╕реЗ рдПрдХ рд╣реА рдЯреБрдХрдбрд╝реЗ рдХреЛ рд▓рд┐рдЦ рджрд┐рдпрд╛, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддреБрд░рдВрдд рдкрддрд╛ рдЪрд▓ рдЬрд╛рдПрдЧрд╛ред
рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдПрдХ рдЕрд▓рдЧ рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╕реВрдЪреА рдореЗрдВ рд╕рдм рдХреБрдЫ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:

рд╡реИрд╕реЗ, рдпреЗ рдПрдХреНрд╕рдЯреНрд░реЗрдХреНрдЯ рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реИрдВред
рдирдП рдирд┐рд░реАрдХреНрд╖рдг рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯреЗрдб рдХреЛрдб рдЯреБрдХрдбрд╝рд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реЛрддрд╛ рд╣реИред рд╕рдВрд╡реЗрджрдирд╢реАрд▓рддрд╛ рд╕реАрдорд╛ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ | рд╕рдВрдкрд╛рджрдХ | рдирд┐рд░реАрдХреНрд╖рдг | рд╕рд╛рдорд╛рдиреНрдп | рдбреБрдкреНрд▓рд┐рдХреЗрдЯреЗрдб рдХреЛрдб рдЯреБрдХрдбрд╝рд╛ -> PHP ред рдФрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ | рд╕рдВрдкрд╛рджрдХ | рдбреБрдкреНрд▓рд┐рдХреЗрдЯ, рдЖрдк рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреА рдЦреЛрдЬ рдХрд░рддреЗ рд╕рдордп рдХреМрди рд╕реЗ рддрддреНрд╡реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЪрд░, рд╡рд┐рдзрд┐рдпреЛрдВ рдпрд╛ рдЧреБрдгреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдирд╛рдореЛрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдирд┐рд░рдВрддрд░ рдореВрд▓реНрдпреЛрдВ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
PHPT рдкреНрд░рд╛рд░реВрдк рдХрд╛ рд╕рдорд░реНрдерди
рдХреНрдпрд╛ рдЖрдк рд╕реНрд╡рдпрдВ PHP рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ PHP рдЖрдВрддрд░рд┐рдХ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ? рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдкреНрд░рд▓реЗрдЦрди рдФрд░ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ! рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдкрдХреЛ рд╕реА рдкрддрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП, PHP рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд╡рд┐рд╢реЗрд╖ .phpt рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдПрдХ рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЬрд┐рд╕реЗ рдХрдИ рдЦрдВрдбреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдореЗрдВ PHP рдХреЛрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рддреЛ, PhpStorm 2019.2 рдореЗрдВ phpt рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рднреА рд╣реИ! рдЕрдиреБрднрд╛рдЧ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ, PHP рдФрд░ INI рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

PHP рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдБ рд╣реИ: PHP TestFest Tutorials , PHP Internals Book рдФрд░ qa.php.net ред
рдХрд┐рд╕реА рднреА PHP рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИ
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рд╕рдВрдЧреАрддрдХрд╛рд░ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕реНрдерд╛рдиреАрдп PHP рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ рдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЙрддреНрдкрд╛рджрди рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЕрдм PhpStorm 2019.2 рдореЗрдВ рдЖрдк IDE рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рдХрд┐рд╕реА рднреА рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдЧреАрддрдХрд╛рд░ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Docker, Docker-Compose, Vagrant рдпрд╛, рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, SSH рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рджреВрд░рд╕реНрде рд╕рд░реНрд╡рд░ред
рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рд░рд┐рдореЛрдЯ рдЗрдВрдЯрд░рдкреНрд░реЗрдЯрд░ рдЪреБрдиреЗрдВ рднрд╛рд╖рд╛рдПрдБ рдФрд░ рд░реВрдкрд░реЗрдЦрд╛ | Php | рд╕рдВрдЧреАрддрдХрд╛рд░ред

рдПрдХ рдореМрдЬреВрджрд╛ рджреБрднрд╛рд╖рд┐рдпрд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдпрд╛ рдПрдХ рдирдпрд╛ рдЬреЛрдбрд╝реЗрдВ!
рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░
рд╣рдо рд╕реВрдЪреА рдХреЛ рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рддреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд
PSR-2 рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд▓рдВрдмрд╛рдИ рдореЗрдВ 80 рд╡рд░реНрдгреЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рд▓рдВрдмреА рд░реЗрдЦрд╛ рдХреЛ рдХрдИ рд░реЗрдЦрд╛рдУрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ 80 рд╡рд░реНрдгреЛрдВ рд╕реЗ рдЫреЛрдЯреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдмрдбрд╝рд╛ рд╕рд░рдгреА рд╣реИ рдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ / рдкреИрд░рд╛рдореАрдЯрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк Alt+Enter
рджрдмрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдкрд░ рд╡рд┐рднрд╛рдЬрд┐рдд рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдорд╛рдиреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдпрджрд┐ рдЕрдЪрд╛рдирдХ, рд░реАрдлрд╝реИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕реВрдЪреА рдЫреЛрдЯреА рд╣реЛ рдЬрд╛рддреА рд╣реИ рдФрд░ рдПрдХ рд▓рд╛рдЗрди рдкрд░ рдлрд┐рдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рд░рд┐рд╡рд░реНрд╕ рдПрдХреНрд╢рди рднреА рдЙрдкрд▓рдмреНрдз рд╣реИ: рдХреЙрдорд╛ рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рдорд╛рдиреЛрдВ рдХреЛ рдПрдХ рд▓рд╛рдЗрди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ ред
рд╡реИрд╕реЗ, рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдХреЛрдб рд╢реИрд▓реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдЦреЛрдЬ рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдХреЗ рдЗрд╕ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, Alt+Enter
рдФрд░ рдХреЛрдб рд╕реНрдЯрд╛рдЗрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░реЗрдВред PhpStorm рдХреЗрд╡рд▓ рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░реЗрдЧрд╛ рдЬреЛ рдЪрдпрдирд┐рдд рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИрдВ:

рд╕реНрд╡рд┐рдЪ рдХрд╛ рдирд┐рд░реНрдорд╛рдг
рд╣рдордиреЗ рдбрд┐рдЬрд╛рдЗрди рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд▓реНрджреА рд╕реЗ рд╢рд╛рдЦрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИред Alt+Enter
рд╢рд░реАрд░ рдХреЗ рдмрд┐рдирд╛ рдХреЗрд╕ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдкрд░ Alt+Enter
рдФрд░ рдХреЙрдкреА 'рд╕реНрд╡рд┐рдЪ' рдмреНрд░рд╛рдВрдЪ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ ред
рдХреЙрдкреА рдХреА рдЧрдИ рд╢рд╛рдЦрд╛ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ, рдЕрдиреНрдпрдерд╛ PhpStorm рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдЧрд╛:

рдЕрдЧрд░ switch
рдореЗрдВ рдХреЛрдИ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╢рд╛рдЦрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ PhpStorm 2019.2 рднреА рдЪреЗрддрд╛рд╡рдиреА рджреЗрдЧрд╛, рдФрд░ рдЖрдк рдЗрд╕реЗ рдПрдХ рддреНрд╡рд░рд┐рдд рдлрд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЗрд░рдлреЗрд░
PhpStorm рдирд┐рдпрдорд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдЬреЛ рдХреБрдЫ рднреА рдЖрдкрдХреЛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХрд░рдирд╛ рд╣реИ - рдЗрд╕реЗ рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ, рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХреЛ рдмрджрд▓реЗрдВ, sprintf
рдХреЛ sprintf
рдпрд╛ рдЗрдВрдЯрд░рдкреЛрд▓реЗрд╢рди рдореЗрдВ рдмрджрд▓реЗрдВ, рдпрд╛ рдХреБрдЫ рдФрд░ - рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд░ Alt+Enter
рджрдмрд╛рдПрдВ рдФрд░ рд╕реВрдЪреА рд╕реЗ рд╡рд╛рдВрдЫрд┐рдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред
рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ, рд╣рдордиреЗ рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рдХреБрдЫ рдирдП рдЪрд┐рдкреНрд╕ рдЬреЛрдбрд╝реЗред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ sprintf
рдореЗрдВ рдПрдХ рд▓рдВрдмреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдФрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдЪреБрдиреЗрдВ, Alt+Enter
рджрдмрд╛рдПрдВ, рдлрд╝реЛрдХрд╕ рдлрд╝рдВрдХреНрд╢рди рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрдпрдирд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рднрд╛рдЧ рдирд┐рдХрд╛рд▓реЗрдВ , рдФрд░ PhpStorm рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕рд╣реА рдЬрдЧрд╣ рдкрд░ рд░рдЦреЗрдЧрд╛:

рдЖрдк рд╕рдВрдШрдирди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЛ рднреА рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди
рд▓рдШреБ рдХреЗ рд▓рд┐рдП рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдЦреЛрдЬ, рдпрд╛ SSR, рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдиреЛрдб рдкреНрд░рдХрд╛рд░ рдпрд╛ рдЕрдиреНрдп рдлрд┐рд▓реНрдЯрд░ рдХрд╛ рд╕рдВрдХреЗрдд рдХрд░рддреЗ рд╣реБрдП рди рдХреЗрд╡рд▓ рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ, рдмрд▓реНрдХрд┐ рдЫреЛрдЯреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рдкреЗрдбрд╝ рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдПрдВ: рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ -> рдЦреЛрдЬреЗрдВ -> рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдЦреЛрдЬреЗрдВ ...
рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рдЦреЛрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЦреЛрдЬ рдкреИрдЯрд░реНрди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдПрдХ nontrivial рдХрд╛рд░реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред PhpStorm 2019.2 рдореЗрдВ, рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдЕрдм рдЖрдк рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдкрд░ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд░-рдмрд╛рд░ рдЦреЛрдЬ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рд╡рд░реНрдЧ рдХреА рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЙрд▓ рдХреЛ рдвреВрдВрдврдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рд╡реЗ рдЬрд┐рдирдореЗрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд░реНрдЧ рдХрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рдирд┐рдпрдорд┐рдд рдЦреЛрдЬ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдЦреЛрдЬрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдПрдХ рд╕рдордп рдореЗрдВ - рдПрд╕рдПрд╕рдЖрд░ рдХреЗ рд╕рд╛рде!

HTTP рдХреНрд▓рд╛рдЗрдВрдЯ
CURL рдкреНрд░рд╛рд░реВрдк рдХрд╛ рд╕рдорд░реНрдерди
рд▓рдЧрднрдЧ рд╕рднреА рд╡реЗрдм рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдФрд░ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдЯреВрд▓реНрд╕ рдЕрдм рдПрдХ рдХреНрд╡реЗрд░реА рдХреЛ CURL рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рдЕрдм рдЗрд╕ рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ PhpStorm рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВред рдХреАрдмреЛрд░реНрдб рд╢реЙрд░реНрдЯрдХрдЯ Cmd+Shift+N (Ctrl+Shift+Alt+Insert)
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдпрд╛ HTTP- рдЕрдиреБрд░реЛрдз рдЦрд░реЛрдВрдЪ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ, рдФрд░ рдлрд┐рд░ рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ cURL рдкреЗрд╕реНрдЯ рдХрд░реЗрдВред рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдкреВрд░реНрдг рдХреНрд╡реЗрд░реА рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдлрд┐рд░ рдЖрдк рд╣реЗрдбрд░ рдФрд░ рдЕрдиреНрдп рдХреНрд╡реЗрд░реА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

HTTP рдХреНрд▓рд╛рдЗрдВрдЯ рдХреБрдХреАрдЬрд╝ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ
рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рд╕реЗрд╡рд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЕрдЧрд▓реЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдПрдХ рдирд┐рдЬреА рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдХрд╣рддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ, рдкрд╣рд▓реЗ рдЕрдиреБрд░реЛрдз рд╕реЗ рд╕рддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╡рд╛рд▓рд╛ рдПрдХ рдХреБрдХреА рдЦреЛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ 2019.2 рдореЗрдВ рд╕рднреА рдХреБрдХреАрдЬрд╝ рдмрд╛рдж рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдФрд░ рдкреНрд░реЗрд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред

рдпрджрд┐ рдЖрдк рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдХреАрдЬрд╝ рдмрдЪрд╛рдИ рдЬрд╛рдПрдВ, рддреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП @no-cookie-jar
рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг
рд╕рдВрд╡рд╛рдж рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдирдпрд╛ рддрд░реАрдХрд╛
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдк рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рдХрдИ рдлрд╛рдЗрд▓реЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╡рд┐рдВрдбреЛ рдХреЗ рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рд╡рд░реНрддрди рдЯреИрдм рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рдЖрд╡рд╢реНрдпрдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддрд┐рдмрджреНрдз рд╕рдВрд╡рд╛рдж рдХрд╣рддреЗ рд╣реИрдВред рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рд╕рдм рдХреБрдЫ рдПрдХ рдкреЙрдк-рдЕрдк рд╡рд┐рдВрдбреЛ рджреНрд╡рд╛рд░рд╛ рдЕрд╡рд░реБрджреНрдз рд╣реИ, рдФрд░ рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
PhpStorm 2019.2 рдореЗрдВ, рдЖрдк рд╕реАрдзреЗ рд▓реЛрдХрд▓ рдЪреЗрдВрдЬреЗрд╕ рдЯреИрдм рд╕реЗ рдХрдорд┐рдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдм, рдХрдорд┐рдЯ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП, рдЖрдк рдкреВрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрддрд┐рд╣рд╛рд╕ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдИрдбреАрдИ рдореЗрдВ рдХреБрдЫ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реБрд╡рд┐рдзрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЕрдХреНрд╖рдо рд╣реИред рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП, "рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдВрд╡рд╛рдж рджрд┐рдЦрд╛рдП, рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдкреНрд░рддрд┐рдмрджреНрдз" рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг | рд╕рдВрд╡рд╛рдж рдХреЛ рдкреНрд░рддрд┐рдмрджреНрдзред
рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ рдЕрдиреБрд╕реНрдорд╛рд░рдХ
рдЬрдм рдЖрдк рдПрдХ рдкреНрд░рддрд┐рдмрджреНрдз рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ PhpStorm 2019.2 рдЖрдкрдХреЛ рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдХреНрд╕рд░ рдмрджрд▓рддреЗ рдереЗ, рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдХрдорд┐рдЯ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рд╣реИред

.Gitignore рдХреЗ рд╕рд╛рде рдмреЗрд╣рддрд░ рдХрд╛рдо
PhpStorm рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ .gitignore рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рджреГрд╢реНрдп рдореЗрдВ рдЕрдирджреЗрдЦрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИред
рдЗрд╕реЗ .gitignore
рдЬреЛрдбрд╝рдирд╛ рдереЛрдбрд╝рд╛ рдЖрд╕рд╛рди рд╣реЛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ Add to .ignignore рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЕрднреА рддрдХ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рд╣реИрдВред

ред .gitignore
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдм рдкрде рдкреВрд░реНрдгрддрд╛ рд╣реИ, рдФрд░ Cmd+click
рджреНрд╡рд╛рд░рд╛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рджреГрд╢реНрдп рдореЗрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЖрдк рд▓реЙрдЧ рдореЗрдВ рд▓реЗрдЦрдХ, рдбреЗрдЯрд╛ рдпрд╛ рд╣реИрд╢ рдХреЙрд▓рдо рдЫрд┐рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдХрд┐рд╕реА рднреА рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Git рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рдкреЙрдкрдЕрдк рд╕реЗ рдХреЗрд╡рд▓ рд╢реЛ рдбрд┐рдл рд╡рд░реНрдХрд┐рдВрдЧ рдЯреНрд░реА рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░реЗрдВ, рдЬрд┐рд╕реЗ рдирд┐рдЪрд▓реЗ рджрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╢рд╛рдЦрд╛ рдХреЗ рдирд╛рдо рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реНрдпреВ рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕
рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реНрдпреВ рдореЗрдВ рдХрдИ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ Git рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдирдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдЗрддрд┐рд╣рд╛рд╕ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рд╕реЗ рдЗрддрд┐рд╣рд╛рд╕ рджрд┐рдЦрд╛рдПрдВ ред

рдбрд╛рдХ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗрд╡рд╛рд▓рд╛ рдордЬрд╝рджреВрд░
рд╣рдордиреЗ рдбреЙрдХрд░ рдХреЛ рдирдИ рд╕реЗрд╡рд╛ рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ред рдЗрд╕ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╕рднреА рдХрдиреЗрдХреНрд╢рдиреЛрдВ рдФрд░ рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдПрдХ рдЬрдЧрд╣ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╣реИред рдЕрдм рддрдХ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, PhpStorm рдореЗрдВ рдбреЙрдХрд░ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЖрдк рд╕реЗрд╡рд╛ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдХреЛрдИ рднреА рд░рди / рдбрд┐рдмрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд░рди рдХреЗ рд╕реЗрд╡рд╛ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ ...
рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдиреЛрдбреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╢реЛ рдХреЛ рдиреНрдпреВ рдЯреИрдм рдореЗрдВ рдХреЙрд▓ рдХрд░рдХреЗ рдпрд╛ рдХреЗрд╡рд▓ рд╕реЗрд╡рд╛ рд╡рд┐рдВрдбреЛ рдХреЗ рд╢реАрд░реНрд╖рдХ рдХреЗ рд╕рд╛рде рдиреЛрдб рдЦреАрдВрдЪрдХрд░ рдПрдХ рдЕрд▓рдЧ рдЯреИрдм рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рджреЗрдЦреЗрдВ
рдЖрдк рдлрд╝рд╛рдЗрд▓ рдЯреИрдм рдкрд░ рдХрдВрдЯреЗрдирд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдВрдкрд╛рджрдХ
рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛрдб рдкреВрд░рд╛ рд╣реЛрдирд╛
рдпрджрд┐ рдЖрдкрдиреЗ рдЕрдЪрд╛рдирдХ function
рдмрдЬрд╛рдп funtcion
рдпрд╛ fnction
рд▓рд┐рдЦрд╛ рд╣реИ, рддреЛ рдпрд╣ рдбрд░рд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдРрдб-рдСрди рд╡реИрд╕реЗ рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЯрд╛рдЗрдкреЛ рдХреЛ рдкрд╣рдЪрд╛рдирддрд╛ рд╣реИред

рдпрд╣ рд╕рднреА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдФрд░ рд╕рднреА рд╡рд░реНрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдХреАрд╡рд░реНрдб, рдХрдХреНрд╖рд╛рдПрдВ, рдХрд╛рд░реНрдп, рдЧреБрдг, рд╡рд┐рдзрд┐рдпрд╛рдБ, рдЖрджрд┐ред
рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд┐рдиреНрдпрд╛рд╕ 'рдЕрдЧрд▓реЗ рд╢рдмреНрдж рдХреА рджреЗрдЦрднрд╛рд▓ рдХрд░реЗрдВ'
рдЖрдк рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╢рдмреНрджреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдкрд░ рдХрд░реНрд╕рд░ рдХрд╣рд╛рдБ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рдХреИрд░реЗрдЯ рдореВрд╡рдореЗрдВрдЯ рдЕрдиреБрднрд╛рдЧ рджреЗрдЦреЗрдВ рд╕рдВрдкрд╛рджрдХ | рдЬрдирд░рд▓ред
< 
рдЯреИрдм рджрдмрд╛рдиреЗ рдкрд░ рдХреЛрд╖реНрдардХ рдФрд░ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рд╕реЗ рдЖрдЧреЗ рдмрдврд╝реЗрдВ
рдкреБрд░рд╛рдиреА рдЪрд┐рдк рдЕрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реИред рдЬрдм рдЖрдк рдЯреИрдм рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЯреИрдм рд╡рд░реНрдг рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХрд╛ рдХрд░реНрд╕рд░ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдФрд░ рдХреЛрд╖реНрдардХреЛрдВ рд╕реЗ рдЖрдЧреЗ рдмрдврд╝ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рдЪреЗрдХрдмреЙрдХреНрд╕ рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╕рдордп рдЯреИрдм рдХреЗ рдмрд╛рд╣рд░ рдЬрдВрдкрд┐рдВрдЧ рдмреНрд░реИрдХреЗрдЯ / рдХреЛрдЯ рдХреЛ рдЕрдирдЪреЗрдХ рдХрд░реЗрдВ рд╕рдВрдкрд╛рджрдХ | рд╕рд╛рдорд╛рдиреНрдп | рд╕реНрдорд╛рд░реНрдЯ рдХреБрдВрдЬреА

рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдб рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдпрд╛ рдХреЛрд╖реНрдардХ рдореЗрдВ рд▓рд┐рдкрдЯрд╛ рд╣реЛрддрд╛ рд╣реИ
рдПрдХ рдФрд░ рд╕реБрдкрд░-рдЙрдкрдпреЛрдЧреА рд╕реБрд╡рд┐рдзрд╛ рдЕрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реИред рдЬрдм рдЖрдк рдХреЛрдб рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджреНрдзрд░рдг (рдпрд╛ рдмреНрд░реИрдХреЗрдЯ) рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрджреНрдзрд░рдг рдФрд░ (рдХреЛрд╖реНрдардХ) рд╕реНрд╡рддрдГ рдЪрдпрди рдХреЗ рдЖрд░рдВрдн рдФрд░ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЬрд╛рдПрдВрдЧреЗред

рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рдЙрджреНрдзрд░рдг рдпрд╛ рдмреНрд░реЗрд╕ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдкрд░ рд╕рд░рд╛рдЙрдВрдб рдЪрдпрди рдХреА рдЬрд╛рдБрдЪ рдХрд░рдХреЗ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рд╕рдВрдкрд╛рджрдХ | рд╕рд╛рдорд╛рдиреНрдп | рд╕реНрдорд╛рд░реНрдЯ рдХреБрдВрдЬреА
MacOS рдкрд░ рдирдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓реЗрдЖрдЙрдЯ
рд╣рдордиреЗ Mac OS X рд╕реЗ macOS рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓реЗрдЖрдЙрдЯ рдХреЛ macOS рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ 10.5+ред рд╣рдордиреЗ рд▓реЗрдЖрдЙрдЯ рдХрд╛ рдирд╛рдо рднреА рдмрджрд▓ рджрд┐рдпрд╛: рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ 10.5 рдХреЛ рдЕрдм рдореИрдХрдУрдПрд╕ рдХреЗ рд▓рд┐рдП рдбрд┐рдлреЙрд▓реНрдЯ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкреБрд░рд╛рдиреЗ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдХреЛ рдЕрдм рдЗрдВрдЯреЗрд▓реАрдЬреЗрдб рдЖрдИрдИрдП рдХреНрд▓рд╛рд╕рд┐рдХ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕рд┐рдВрдЯреЗрдХреНрд╕ 20 рд╕реЗ рдЕрдзрд┐рдХ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ
рдпрджрд┐ рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ PHP рдФрд░ JavaScript рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреА рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ, рддреЛ PhpStorm 2019.2 рдЖрдкрдХреЛ рдкрд╛рдпрдерди, рд░реВрдмреА, рдЧреЛ рдФрд░ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдПрдХ рдкреВрд░реЗ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рдХреЗ рд╕реБрдЦрдж рдЖрд╢реНрдЪрд░реНрдп рд╣реЛрдЧрд╛ред рдпрд╣ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрд┐рд╕реА рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рдЗрд╕рдХреЗ рд╕рд╛рде, рд╣рдо рдЙрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП PhpStorm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрднрд╡ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХрднреА-рдХрднреА рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХреЛрдб рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред PhpStorm рдЕрднреА рднреА рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдПрдХ PHP рдФрд░ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рд╣реИ , рдЗрд╕рд▓рд┐рдП рд╣рдо рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдкрд░реЗ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВред

рдЕрддрд┐рд░рд┐рдХреНрдд рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ TextMate рд╡реНрдпрд╛рдХрд░рдг рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкрд░ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕рдорд░реНрдерд┐рдд рднрд╛рд╖рд╛рдУрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рджреЗрдЦреЗрдВ | рд╕рдВрдкрд╛рджрдХ | рдЯреЗрдХреНрд╕реНрдЯрдореИрдЯ рдмрдВрдбрд▓реНрд╕ ред
рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ
PhpStorm 2019.2 рдореЗрдВ, рд╣рдордиреЗ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рдкрдХ рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдореЗрдВ рдкрде рдкрд░рд┐рд╡рд░реНрдзрди, рдирд╛рдо рдмрджрд▓рдирд╛, рдХреЛрдб рдЬрдирд░реЗрд╢рди ( Cmd+N/Alt+Insert)
рдФрд░ рд▓рд╛рдЗрд╡ рдЯреЗрдореНрдкреНрд▓реЗрдЯ ( Cmd+J/Ctrl+J)
рдПрдХ рд╕рдореВрд╣ рд╢рд╛рдорд┐рд▓ рд╣реИред

рдХрдИ рдмрд╛рд╣рд░реА рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред
рд▓рд┐рдкрд┐рдпреЛрдВ рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП, PhpStorm рд╢реЗрд▓рдЪреЗрдХ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрдЧрд╛ , рдЬреЛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдПрдХ рдЯрди рдкрд╛рддрд╛ рд╣реИ рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ PhpStorm 2019.2 рдореЗрдВ рдпрд╣ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдХреЛ рдлреЙрд░реНрдореЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП mvdan / sh рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рд╣реЛрддрд╛ рд╣реИред рдЬрдм рдЖрдк рдкрд╣рд▓реА рдмрд╛рд░ рд░рд┐рдлреЙрд░реНрдордЯ рдХреЛрдб рдХрд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдИрдбреАрдИ рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрдд рджреЗрдЧрд╛ рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░реЗрдЧрд╛ред
рдФрд░ рдЕрдВрдд рдореЗрдВ, рдПрдХреНрд╕рдкреЗрд▓рд╢реЗрд▓ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рд╣реИред рдЖрдк рдХрд┐рд╕реА рднреА рдХрдорд╛рдВрдб рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, Alt+Enter
рдФрд░ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рд╢реЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред IDE Explainshell рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░реЗрдЧрд╛, рдЬрд╣рд╛рдВ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЪрдпрдирд┐рдд рд╕реЗрдЯ рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИред рдЬрдм рдЖрдк рд╕реАрдзреЗ IDE рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рдкрд░ рд╣реЛрд╡рд░ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рд╕рд╣рд╛рдпрддрд╛ рднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред

EditorConfig
.Editorconfig рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЬреЛрдбрд╝рдХрд░, рдЖрдк рдЯреАрдо рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЕрдзрд┐рдХ рдордиреЛрд░рдВрдЬрдХ рдмрдирд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдирд┐рд╢реНрдЪрд┐рдд рд╢реИрд▓реА рд╡рд┐рдХрд▓реНрдк рд╕рдВрдкрд╛рджрдХ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд╡рдЬреВрдж рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред
рдкрд╣рд▓реЗ, PhpStorm рдореЗрдВ, EditorConfig рдкреНрд▓рдЧрдЗрди рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛, рд▓реЗрдХрд┐рди 2019.2 рдореЗрдВ рдпрд╣ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдЙрдкрд▓рдмреНрдз рд╣реИ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдЪрд░рдгреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╕рдмрдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╕ рдЖрд╡рд╢реНрдпрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ .editorconfig
рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рдПрдВ - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдк .editconfig рдлрд╝рд╛рдЗрд▓ рдореЗрдВ PhpStorm! рд╡рд┐рдХрд▓реНрдк рднреА рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
EditorConfig рдХреЗ рдорд╛рдирдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдЖрдк PhpStorm рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд▓рдЧрднрдЧ рд╕рднреА рд╢реИрд▓реА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ, рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ UI рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдорд╛рдирдХ рд▓реЛрдЧреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ij_
рдЙрдкрд╕рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рджреГрд╢реНрдп рд╕реЗ рдПрдХ рдирдИ .editorconfig рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ PhpStorm рдЖрдкрдХреЛ рдмрдирд╛рдП рдЧрдП рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреМрди рд╕реЗ рд╡рд┐рдХрд▓реНрдк рдЪреБрдирдиреЗ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрдЧрд╛ред рдЙрдиреНрд╣реЗрдВ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрд╕рд╣рдЬ рдФрд░ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рджрд┐рдЦрд╛рд╡рдЯ
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реНрдпреВ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА
рдЖрдк рд╡реНрдпреВ -> рдЗрди-рдкреНрд▓реЗрд╕ рд╡рд┐рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реНрдпреВ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдФрд░ рд╕рдВрд╢реЛрдзрди рдХреА рддрд╛рд░реАрдЦ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдПрдХ рдирдП рддрд░рд╣ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдЯреВрд▓рдЯрд┐рдк
рдЯреВрд▓рдЯрд┐рдк рдЕрдм рди рдХреЗрд╡рд▓ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реВрдЪреА рд╕реЗ рдкрд╣рд▓рд╛ рдирд┐рд░реНрдзрд╛рд░рдг рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ рддреБрд░рдВрдд рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдВрдХреЗрдд рдпрд╛ рдХреНрд▓рд┐рдХ рдХреЗ рдмрд┐рдирд╛, Alt+Shift+Enter
ред рд╕рднреА рдЙрдкрд▓рдмреНрдз рдлрд╝рд┐рдХреНрд╕реЗрд╕ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, Alt+Enter
рджрдмрд╛рдПрдБред

Windows рдкрд░ рдирд╡реАрдиреАрдХреГрдд UI
рд╡рд┐рдВрдбреЛрдЬ 10 рдкрд░ рддрд╛рдЬрд╛ рдиреАрд░рд╡ рджреГрд╢реНрдп:

PhpStorm, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, WebStorm рд╕реЗ рдФрд░ DataGrip рд╕реЗ рд╕рднреА рдЕрдкрдбреЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдПрдХ рдкреВрд░реА рд╕реВрдЪреА рдмрд╣реБрдд рдмрдбрд╝реЗ рд░рд┐рд▓реАрдЬ рдиреЛрдЯреЛрдВ рдореЗрдВ рдорд┐рд▓ рд╕рдХрддреА рд╣реИред
рдФрд░ рдЕрдВрдд рдореЗрдВ, рд░рд┐рд▓реАрдЬрд╝ рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯрд╛ рд╡реАрдбрд┐рдпреЛ (рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ):
рдпрд╣ рд╕рдм рдПрдХ рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рд╣реИред рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдкреНрд░рд╢реНрди, рдЗрдЪреНрдЫрд╛рдПрдБ, рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдФрд░ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕рд┐рд░реНрдл рд╡рд┐рдЪрд╛рд░ рд╡реНрдпрдХреНрдд рдХрд░рддреЗ рд╣реИрдВ! рд╣рдореЗрдВ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред
рдЖрдкрдХреА JetBrains PhpStorm рдЯреАрдо