PHP Digest # 185 (20 Juli - 3 Agustus 2020)



Pilihan baru dengan tautan ke berita dan materi. Dalam rilisnya: PHP 8 Alpha 3, PhpStorm 2020.2, operator baru ?->, lagi-lagi diskusi tentang sintaks atribut dan berita Internal PHP lainnya, gambaran umum sistem tipe dalam PHP, bagian dari alat yang berguna, video, aliran dan banyak lagi.



Selamat membaca!





Berita dan rilis





PHP Internals



  • [RFC] Shorter Attribute Syntax Change β€” PHP 8 . .



    : << >>, @@, .

    @@ , RFC . , #[ ] Rust, .



    , PHP 8.1, - 8.0 4 . PHP 8.0, << >>, #[], @@, PHP 8.1 .



    : @[Attribute], PHPDoc /** @@MyAttribute */, β€” @ @@, @ .







    , @@, - , T_PAAMAYIM_NEKUDOTAYIM , - β€” PHP 8 Alpha 3 .
  • memeriksa [RFC] Treat namespaced names as single token β€” PHP 8 . , , namespace app\function { class Foo {} } .



    , , :
    use /** Try comments */ \FullyQualified \ /* in this ugly way */ SometTotallyDifferentTrait /** also after */;
  • memeriksa [RFC] Saner string to number comparisons β€” .



    PHP 8, == , .



    0 == 'foobar' false.





    <=>, ==, !=, >, >=, < <=, switch, in_array(), sort() .
  • memeriksa [RFC] Nullsafe operator β€” PHP 8 nullsafe: ?->.

    C null.



    , :
    
    private function getUserCountry(): ?string
    {
        $session = $this->sessionStorage->getSession();
    
        if (null === $session) {
            return null;
        }
    
        $user = $session->getUser();
    
        if (null === $user) {
            return null;
        }
    
        if (null === $user->address) {
            return null;
        }
    
        return $user->address->country;
    }
    
    :
    $country = $this->sessionStorage->getSession()?->getUser()?->address?->country;


    (@).
  • memeriksa [RFC] Allow trailing comma in closure use lists β€” use PHP 8 , .
    
    $f = function (
        $longArgument,
        $longerArgument,
        $muchLongerArgument,
    ) use (
        $longVar1,
        $longerVar2,
        $muchLongerVar3, //      
    ) {
       ...
    };
    
  • memeriksa [RFC] Named Arguments β€” PHP 8 !

    , .

    htmlspecialchars($string, ENT_COMPAT | ENT_HTML401 , ini_get("default_charset"), false);
    :

    htmlspecialchars($string, double_encode: false);


    stitcher.io/blog/php-8-named-arguments.
  • [RFC] Renamed Parameters β€” . RFC.



    :
    
    function callBar(Foo $internalName:externalName) {
        $internalName->bar();
    }
    
    $x = new Foo();
    callBar(externalName: $x);
    


    - Swift. , @@NameAlias.
  • menyeberang [RFC] Make constructors and destructors return void β€” .






Symfony





Laravel









/





Terima kasih atas perhatian Anda!



Jika Anda melihat kesalahan atau ketidakakuratan, harap beri tahu kami secara pribadi .

Pertanyaan dan saran menulis ke mail , twitter atau telegram pronskiy...



Lebih banyak berita dan komentar di saluran Telegram PHP Digest .



Kirim tautan

Cari tautan di semua intisari

← Edisi sebelumnya: PHP-Digest β„– 184




All Articles