PHP Digest No. 148 (14 - 28 Januari 2019)


Seleksi segar dengan tautan ke berita dan bahan. Dalam masalah ini: meretas repositori PEAR, tentang masa depan Xdebug, konferensi PHP Russia 2019, rilis terbaru, penawaran RFC dari PHP Internals, sebagian dari alat yang berguna, dan banyak lagi.

Selamat membaca!



Berita dan Siaran



PHP internal


  • [RFC] Operator Penugasan Null - Proposal ini diterima lebih dari dua tahun lalu. Dan sekarang implementasi operator gabungan dengan memeriksa null ??= akhirnya selesai dan diberikan. Terlepas dari kesederhanaan tugas tersebut, pelaksanaannya ternyata sangat tidak sepele .
    Total: $a ??= $b setara dengan $a ?? ($a = $b) $a ?? ($a = $b) . Dalam kasus $a[foo()] ??= bar() fungsi foo() akan dipanggil tepat sekali, dan bar() akan dipanggil jika $a[foo()] bernilai null (atau tidak disetel).
    Topiknya adalah posting yang baik tentang operator pendek lainnya di PHP .
  • [RFC] Mekanisme serialisasi objek kustom baru - RFC segar dari Nikita Popov. Diusulkan untuk memperkenalkan mekanisme baru untuk serialisasi objek dengan menambahkan beberapa metode ajaib:

     // Returns array containing all the necessary state of the object. public function __serialize(): array; // Restores the object state from the given data array. public function __unserialize(array $data): void; 

    Perubahan ini dimaksudkan untuk memperbaiki Serialiazable antarmuka Serialiazable . Sayangnya, tidak mungkin untuk memperbaiki antarmuka itu sendiri, tetapi jika proposal diterima, akan ada alternatif yang berfungsi.
  • [RFC] Konstruktor bebas kode - Diusulkan untuk menambahkan konstruktor otomatis yang tugasnya menginisialisasi properti:
    Teks tersembunyi
     class MotorCycle { public $vendor; public $cc; public $whells = 2; public function __construct($vendor, $cc) { $this->vendor = $vendor; $this->cc = $cc; } //other methods } class MyCustomMotorCycle extends MotorCycle { public function __construct($cc, $whells) { parent::__construct("Custom", $cc); // $this->cc = $cc; this statement will be added within proposed realisation $this->whells = $whells; } } 

    untuk kode di atas, sintaks alternatif berikut disarankan:
     class MotorCycle($vendor, $cc){ public $whells = 2; //other methods }; class MyCustomMotorCycle($cc, $whells) extends MotorCycle("Custom", $cc){ }; 


Alat-alatnya



Symfony



Laravel



Async php



CMS



Materi Pembelajaran




Menghibur


  • Code Galaksi - Visualisasi 3D yang menyenangkan dari hubungan antara paket Komposer.

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 .

Lebih banyak berita dan komentar di Saluran Telegram PHP Digest .

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

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


All Articles