PHP Digest No. 151 (25 Februari - 11 Maret 2019)


Seleksi segar dengan tautan ke berita dan bahan. Dalam rilis: pembaruan PHP, Laravel 5.8, Xdebug 2.7 dan rilis lainnya, 3 RFC segar, 2 diterima, dan konsep dari PHP Internals, sebagian dari alat yang berguna, dan banyak lagi.

Selamat membaca!



Berita dan Siaran



PHP internal


  • [RFC] Saner string to number comparison - Dalam RFC baru-baru ini, Nikita Popov menyarankan mengubah perilaku == dan membuat perbandingan longgar lebih rentan kesalahan. Secara khusus, perbandingan angka diusulkan untuk digunakan hanya jika string yang dibandingkan sebenarnya adalah numerik. Kalau tidak, jumlahnya dikonversi menjadi string, dan string tersebut dibandingkan.

    Proposal ini memerlukan perubahan dalam perilaku operator perbandingan <=> , == , == != , > >= , < , Dan <= , switch konstruksi, fungsi seperti in_array() , sort() dan lainnya.

    Sebagai tanggapan, ide-ide dari berbagai tingkat radikalisme diterima: dari pengenalan bendera khusus declare('strict_comparison=1'); , yang akan mengubah semuanya == menjadi === , sebelum tawaran untuk membatalkan == secara umum .

    Sementara itu, pada 7.4, Peringatan mungkin akan dilemparkan jika hasil perbandingan berbeda dari yang diharapkan dalam PHP 8.
  • [RFC] Izin membuntuti spasi putih dalam string numerik - Saran lain yang dirancang untuk meningkatkan konsistensi, tetapi dengan melemahnya. Diusulkan untuk memungkinkan spasi putih pada akhir garis numerik, yaitu, sehingga "123 " == " 123" dan semua operasi lainnya bekerja, serta untuk garis dengan spasi terdepan.
  • [RFC] Kesalahan tipe yang konsisten untuk fungsi internal - Proposal telah diterima, yang berarti bahwa dalam PHP 8, fungsi bawaan akan melempar TypeError jika parameter dari tipe yang salah dilewatkan dan, karenanya, tidak akan mengembalikan nol.
  • [RFC] Referensi Lemah - Proposal untuk menerapkan tautan lemah diterima.
  • [RFC] Kelas Terkunci - Diusulkan untuk memperkenalkan kata kunci baru yang locked untuk kelas. Kelas semacam itu akan ditutup untuk penggunaan dinamis properti, yaitu, Anda tidak dapat mengakses properti yang tidak dideklarasikan:
    Teks tersembunyi
     locked class TestClass { public $definedProp; } $t = new testClass(); $t->definedProp = "OK"; echo $t->definedProp; unset($t->definedProp); echo $t->nonExistentProp; // Error $t->nonExistentProp = "Not OK"; // Error unset($t->definedProp); // Error 
  • video PHP Internals News: Episode 1 - Podcast baru dari penulis Xdebug Derick Rethans. Dalam edisi pertama, percakapan dengan Nikita Popov.
  • Izinkan melempar dari __toString () - PR dari Nikita dengan perbaikan untuk salah satu masalah PHP lama - ketidakmampuan untuk melempar pengecualian di __toString .
  • Daftar pemahaman - Konsep dari Sarah Goleman dengan implementasi daftar pemahaman untuk PHP. Sintaksnya kurang elegan daripada di Python, tetapi terlihat menarik:
     $a = [1, 2, 3]; $mul = 3; $c = [ for $a as $v yield $mul * $v use ($mul) ]; 

Alat-alatnya



Symfony



Laravel



Yii



Async php



Materi Pembelajaran



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
Masalah sebelumnya: PHP Digest No. 150

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


All Articles