Keadaan Yoda, dalam PHP, Apakah ?

WBOY
Lepaskan: 2024-08-29 06:33:32
asal
863 orang telah melayarinya

Yoda condition, in PHP, What is ?

Semasa menatal kod anda mungkin terjumpa sesuatu seperti ini jika (1 === $var).

Apakah yang mungkin menjadi perbezaan antara if ($var === 1) dan jika (1 === $var) ?

jika ($var === 1)

  • Beginilah cara kami mempelajari kod kerana anda boleh menulis dengan cara yang sama anda bercakap: jika pembolehubah $var bersamaan dengan 1 maka lakukan sesuatu.

jika (1 === $var)

  • Ini dikenali sebagai "keadaan Yoda" daripada Jedi Master terkenal yang bercakap secara terbalik.

Perlu diketahui bahawa tiada perbezaan dalam fungsi antara kedua-dua pendekatan. Jadi, kenapa anda menggunakan syarat Yoda semasa menulis syarat ?

Satu-satunya sebab mengapa keadaan Yoda digunakan

Apabila menulis pernyataan if, anda mungkin terlepas beberapa tanda yang sama. Masalahnya ialah apabila anda mengalami sesuatu seperti ini:

if ($var = 1) { // Instead of $var === 1 // Do something }
Salin selepas log masuk

Apa yang berlaku di sini ?

Tiada ralat dikesan kerana kod ini sah. Masalahnya ialah ia tidak berfungsi seperti yang dimaksudkan: pembolehubahdiberikankepada nilai 1, tiada perbandingan dilakukan dan ia sentiasa benar.

Di sinilah keadaan Yoda berguna; dengan kes yang sama, kita dapat:

if (1 = $var) { // Instead of 1 === $var // Do something }
Salin selepas log masuk

Di sini kami juga terlepas beberapa persamaan tetapi kod itu tidak sah dan, kali ini, kami mendapat ralat kerana ini tidak sah.

Kesimpulan

Kami telah melihat bahawa tujuan tunggal syarat Yoda adalah untuk mengelakkan tugasan tidak disengajakan yang mengakibatkan kos kebolehbacaan yang kurang.

Perlukah anda menggunakannya? Kenapa tidak! Tetapi perlu diingat bahawa ini tidak akan menambah baik kod anda dengan sebarang margin.

Juga ia boleh membantu untuk melenturkan diri pada parti dengan pembangun (yang sebenarnya tidak begitu kerap).

Untuk anda membaca, terima kasih! ?

Atas ialah kandungan terperinci Keadaan Yoda, dalam PHP, Apakah ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!