PHPダイジェスト#183(2020年6月22日-7月5日)

James Titcumbによる写真



ニュースと資料へのリンクを含む新鮮なセレクション。リリースのPHP 8に関するすべて:最初のアルファ、新しい式match@@属性の構文バグ、実際のJITベンチマーク、4つの新しい提案。そして、いつものように、ツール、記事、ビデオ、ポッドキャスト。



読書を楽しむ!



ニュースとリリース



  • PHP 8.0 alpha 1 — - PHP! .

    :



    PHP 8 . 3v4l.org Docker-.

  • `CurlHandle` class objects replace curl handlers — , PHP resource /. PHP 8 curl_ \CurlHandle.
  • JIT PHP 8 JIT .



    Derick Rethans , JIT , , C. Brent Roose - .



    Benjamin Eberlei , JIT .
  • . 8 .


PHP Internals



  • 小切手 [RFC] Shorter Attribute Syntax@@.



    , , , .



    : function(@@X \ Y $z) function(@@X\Y $z) ( X\Y ) function(@@X \Y $z) ( X \Y ). PHP .



    @@, , [RFC] Treat namespaced names as single token.
  • 小切手 [RFC] Match expression v2 — PHP 8 match, switch, .



    //    switch:
    switch ('foo') {
        case 0:
          $result = "Oh no!\n";
          break;
        case 'foo':
          $result = "This is what I expected\n";
          break;
    }
    echo $result;
    //> Oh no!
    
    //     match:
    echo match ('foo') {
        0 => "Oh no!\n",
        'foo' => "This is what I expected\n",
    };
    //> This is what I expected
    
  • [RFC] Allow trailing comma in closure use listsuse , .



    $longArgs_longVars = function (
        $longArgument,
        $longerArgument,
        $muchLongerArgument,  //    PHP 8.0  
    ) use (
        $longVar1,
        $longerVar2,
        $muchLongerVar3  //     
    ) {
       // body
    };
    
  • [RFC] Property write/set visibility — : . :
    // Syntax Option A
    class User {
        public:private int $id;
        public:protected string $name;
    }
    
    // Syntax Option B
    class User {
        public private(set) int $id;
        public protected(set) string $name;
    }
    


    , - , PHP 8.1, RFC, , , , .
  • [RFC] Language Constructs Syntax Changesdeclare __halt_compiler — , , echo, .



    declare(strict_types=1);
    // =>
    declare strict_types = 1;
    
  • [RFC] Saner numeric strings — RFC .



    -, «, ». echo '2str' + 2; 4, 2 E_NOTICE “A non well formed numeric value encountered” E_WARNING “A non-numeric value encountered”.



    -, , "123 " == " 123" true , .






Symfony





Laravel





Async PHP









/





ご清聴ありがとうございました!



エラーや不正確な点に気づいた場合は、個人的なメッセージでお知らせください

質問や提案はメールまたはツイッターに書き込みます。PHP Digest



Telegramチャネルに関するその他のニュースとコメントリンクを送信すべてのダイジェストでリンクを検索前の問題:PHP-ダイジェスト№182












All Articles