PHP Digest No. 133 (10 - 24 Juni 2018)


Seleksi segar dengan tautan ke berita dan bahan. Dalam rilis: PHP 7.3.0 Alpha 2, rencana untuk PHP 8.0, Typed Properties, dan RFC lainnya dari PHP Internals, sebagian dari alat yang bermanfaat, dan banyak lagi.
Selamat membaca!


Berita dan Siaran



PHP internal


  • [RFC]: Typed Properties 2.0 - Sebuah proposal besar dan sangat rinci dari Nikita Popov dan Bob Weinand untuk menerapkan properti yang diketik. Sebelumnya ada upaya untuk merealisasikan peluang ini, tetapi proposal tersebut tidak melewati ambang 2/3 suara. Dokumen ini membahas 2 masalah utama dari implementasi sebelumnya: tipe untuk properti statis didukung, dan referensi untuk properti yang diketik. Karena itu, kali ini ada setiap kesempatan untuk memilih. Permintaan kumpulan yang sesuai sudah siap.
    Pertanyaan versi tetap terbuka: PHP 7.3 saat ini sedang dipertimbangkan, tetapi jika kesulitan muncul, mungkin ditunda hingga 7.4 (8).
    Teks tersembunyi
    class Example { // All types with the exception of "void" and "callable" are supported public int $scalarType; protected Type $type; private ?Type $nullableType; // Types are also legal on static properties public static iterable $staticProp; // Types can also be used with the "var" notation var bool $flag; // Typed properties may have default values (more below) public string $str = "foo"; public ?string $nullableStr = null; // The type applies to all properties in one declaration public float $x, $y; // equivalent to: public float $x; public float $y; } 
  • [RFC] Deprecate dan Remove Case-Insensitive Constants - Menggunakan define() Anda dapat mendefinisikan konstanta case-insensitive. Diusulkan untuk menghapus fitur ini.
  • [RFC] Turunkan dan hapus sakelar penargetan terus - continue di dalam switch berperilaku seperti break , meskipun ini tidak terjadi dalam bahasa lain. Diusulkan untuk memperbaiki perilaku.
  • switch ketat - Sara Golemon, sebagai ide, menyarankan penerapan switch ketat:
    Teks tersembunyi
     switch ($a) { case FOO: // Works exactly as current behavior. break; case == FOO: // Nearly identical, though we don't use the ZEND_CASE optimization. // Can probably make this equivalent to `case FOO`, but it felt like an interesting direction. break; case === FOO: // Only triggers if `$a === FOO`, no type juggling break; } 

Alat-alatnya




Materi Pembelajaran




Audio dan video



Terima kasih atas perhatian anda!

Jika Anda melihat kesalahan atau ketidaktepatan - mohon informasikan kepada saya di PM .
Pertanyaan dan saran menulis ke email atau twitter .

Kirim tautan
Tautan pencarian untuk semua pencernaan
Release Rilis sebelumnya: PHP Digest No. 132

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


All Articles