PHP рдбрд╛рдЗрдЬреЗрд╕реНрдЯ рдирдВрдмрд░ 161 (15 рдЬреБрд▓рд╛рдИ - 29, 2019)


рд╕рдорд╛рдЪрд╛рд░ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рддрд╛рдЬрд╛ рдЪрдпрдиред рд░рд┐рд▓реАрдЬ рдореЗрдВ: PHP 7.4.0 рдмреАрдЯрд╛ 1, PhpStorm 2019.2, PSR-12, PHP рдЗрдВрдЯрд░рдиреИрд╢рдирд▓ рд╕реЗ RFC рдХрд╛ рдПрдХ рдУрд╡рд░рд╡реНрдпреВ, рд▓рд░рд╛рдХреЛрди рдпреВрдПрд╕ рд╕реЗ рд╕рдорд╛рдЪрд╛рд░, рдкреЙрдбрдХрд╛рд╕реНрдЯ, рдЙрдкрдпреЛрдЧреА рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛, рдФрд░ рдмрд╣реБрдд рдХреБрдЫред

рдЕрдЪреНрдЫрд╛ рдкрдврд╝ рд▓реЛ!



рд╕рдорд╛рдЪрд╛рд░ рдФрд░ рд╡рд┐рдЬреНрдЮрдкреНрддрд┐



PHP рдХреЗ рдЖрдВрддрд░рд┐рдХ


  • [RFC] PHP re.рек рдХреЗ рд▓рд┐рдП рдкрджрд╛рд╡рдирддрд┐ - рдкреНрд░рд╕реНрддрд╛рд╡ рд╕реЗ рд╕рднреА рдорджреЛрдВ рдиреЗ рдорддрджрд╛рди рдХреЗ рд▓рд┐рдП рд╕реАрдорд╛ рдкрд╛рд░ рдХрд░ рд▓реА рд╣реИ рдФрд░ PHP re.рек рдореЗрдВ рдкрджрд╛рд╡рдирдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
  • [рдЖрд░рдПрдлрд╕реА] рдмрдЪ рдкреАрдбреАрдУ "?" рдкреИрд░рд╛рдореАрдЯрд░ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ - рдПрдХ рдЪрд░рд┐рддреНрд░ рд╕реЗ рдмрдЪрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡? рдкреАрдбреАрдУ рдореЗрдВ рдЗрд╕реЗ PHP 7.4 рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдФрд░ рдЕрдкрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • [RFC] рд╕реНрдкрд╖реНрдЯ рдХреЙрд▓-рд╕рд╛рдЗрдЯ рдкрд╛рд╕-рджрд░-рд╕рдВрджрд░реНрдн - рдирд┐рдХрд┐рддрд╛ рдХрд╛ рдПрдХ рдкреБрд░рд╛рдирд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдлрд┐рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдореЗрдВ рд╣реИред рдлрд┐рд▓рд╣рд╛рд▓, рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рддрд░реНрдХ рд▓реЗрддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдлрд╝рдВрдХреНрд╢рди рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
    function byRef(&$ref) {...} byRef($var); 
    рдЗрд╕реЗ рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рдирд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдирд╛ рдХрд┐ рдкрд╛рд░рд┐рдд рдЪрд░ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛:
     function byRef(&$ref) {...} byRef(&$var); 
  • [RFC] рдиреЗрдорд╕реНрдкреЗрд╕-рд╕реНрдХреЛрдк рдХреА рдШреЛрд╖рдгрд╛ - рдПрдХ рдФрд░ рдкреБрд░рд╛рдирд╛ RFC рдмрд╣рд╕ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдпрд╣ declare(); рдмрдЬрд╛рдп рдкреВрд░реЗ рдирд╛рдорд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рджреБрднрд╛рд╖рд┐рдпрд╛ рдирд┐рд░реНрджреЗрд╢ рд╕реЗрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдерд╛ declare(); рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рд╕рдЦреНрдд_рдСрдкрд░реЗрдЯрд░ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
    рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда
     namespace_declare('Vendor\Lib', [ 'strict_types' => 1, 'strict_operators' => 1, ... ]); 
    рдЕрдм рдирд╛рдорд╕реНрдерд╛рди рдХреЗ рдмрдЬрд╛рдп рдлрд╝реЛрд▓реНрдбрд░ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ - рдпрд╣ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред
  • [RFC] рдбреАрдкреНрд░реЗрдХреНрдЯ PHP рд▓рдШреБ рдЦреБрд▓реЗ рдЯреИрдЧреНрд╕ v2 - рдореВрд▓ рд╡рд╛рдХреНрдп рдиреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рд╣реИ <? ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕реЗ рдЕрдкрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдХреНрд░реЛрд╢ рдФрд░ рд╡рд┐рд╡рд╛рдж рдХрдо рд╣реЛ рдЧрдпрд╛ред рдпрд╣ RFC рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ: рдпрджрд┐ php.ini рдореЗрдВ short_open_tag рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рд╣реИ, рддреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ <? рдиреЛрдЯрд┐рд╕ рдлреЗрдВрдХрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ PHP 7.4 рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреАрдЯрд╛ рдореЗрдВ рд╣реИ, рдЕрдЧрд░ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд░рд┐рд▓реАрдЬ рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рджреЗрд░реА рд╣реЛрдЧреАред

рдЙрдкрдХрд░рдг


  • рдХреНрд░рдХрдЬреЛ / рдХрдмреНрд░реЛрдВ - "рдореГрдд" рдХреЛрдб рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдЯреЗрдВрд╢рдиред рдкреНрд░рджрд░реНрд╢рди рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдбрд░ рдХреЗ рдмрд┐рдирд╛ рдЙрддреНрдкрд╛рджрди рдкрд░ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ, рдПрдХ рджрд┐рди / рд╕рдкреНрддрд╛рд╣ / рдорд╣реАрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ, рдлрд┐рд░ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреМрди рд╕реЗ рдХрд╛рд░реНрдп / рддрд░реАрдХреЗ рдХрднреА рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВред рд▓реЗрдЦрдХ рдХреЗ рдкреЛрд╕реНрдЯ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдгред
  • рдХреНрд░рд╛рдХреЛрдЬреЛ / рд╕реНрдЯреЗрдЯ - рдЬреЛ рд╡рд╛рдЯрдХрд┐рдВрд╕ рдХреА рдПрдХ рдФрд░ рдЕрдЪреНрдЫреА рдЕрд╡рдзрд╛рд░рдгрд╛ред рдЙрддреНрдкрд╛рджрди рдкрд░ PHP рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░ред рдирд┐рд╖реНрдкрд╛рджрди рдУрд╡рд░рд╣реЗрдб рдХреЗ рдмрд┐рдирд╛ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдереНрд░реЗрдб рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдкреЛрд╕реНрдЯ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАред
  • jeremeamia / iter8 - рдЬрдирд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд░реЗ рдХреЛ рдмрджрд▓рдирд╛ рдФрд░ рдмрджрд▓рдирд╛ред рдирд┐рдХрд┐рддрд╛ рдкреЛрдкреЛрд╡ рд╕реЗ рдХреНрд▓рд╛рд╕рд┐рдХреНрд╕ рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк: рдирд┐рдХрд┐рдХ / рдЗрдЯрд░ ред
  • cpliakas / git-рдЖрд╡рд░рдг - Git рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП PHP рд╢реЗрд▓ред
  • exussum12 / serverChecker - рдЙрдкрдХрд░рдг рдЖрдкрдХреЛ рдЕрдЪреНрдЫреА рдкреНрд░рдерд╛рдУрдВ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдмреЗрд╕рд▓рд╛рдЗрди рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ 90% рдкрд░реАрдХреНрд╖рдг рдХрд╡рд░реЗрдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдкреВрд░реЗ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЙрд╕ рдПрдХ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕реЗ рдХрдорд┐рдЯ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред

Symfony



Laravel



Yii



Async php



serverless



рд╕реАрдЦрдиреЗ рдХреА рд╕рд╛рдордЧреНрд░реА




рдСрдбрд┐рдпреЛ / рд╡реАрдбрд┐рдпреЛ



рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдпрджрд┐ рдЖрдкрдХреЛ рдХреЛрдИ рдЧрд▓рддреА рдпрд╛ рдЕрд╢реБрджреНрдзрд┐ рджрд┐рдЦрддреА рд╣реИ - рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдкреАрдПрдо рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░реЗрдВред
рдкреНрд░рд╢реНрди рдФрд░ рд╕реБрдЭрд╛рд╡ рдореЗрд▓ рдпрд╛ рдЯреНрд╡рд┐рдЯрд░ рдкрд░ рд▓рд┐рдЦрддреЗ рд╣реИрдВред

PHP рдбрд╛рдЗрдЬреЗрд╕реНрдЯ рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рдЪреИрдирд▓ рдкрд░ рдЕрдзрд┐рдХ рд╕рдорд╛рдЪрд╛рд░ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВред

рд▓рд┐рдВрдХ рднреЗрдЬреЗрдВ
рд╕рднреА рдбрд╛рдЗрдЬреЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдЦреЛрдЬреЗрдВ
тЖР рдкрд┐рдЫрд▓рд╛ рд░рд┐рд▓реАрдЬрд╝: PHP рдбрд╛рдЗрдЬреЗрд╕реНрдЯ рдирдВрдмрд░ 160

Source: https://habr.com/ru/post/hi461669/


All Articles