en Böyle bir şey var diyelim:PHP if (koşul) yürütme
if(1 == 0 && do_stuff()) {
...
}
Açıkçası 1 0 değil, bu yüzden diğer durumunu kontrol etmek anlamı yok. Yani PHP hiç do_stuff()
mu?
en Böyle bir şey var diyelim:PHP if (koşul) yürütme
if(1 == 0 && do_stuff()) {
...
}
Açıkçası 1 0 değil, bu yüzden diğer durumunu kontrol etmek anlamı yok. Yani PHP hiç do_stuff()
mu?
Hayır - PHP, temkinli değerlendirme (bazen kısa devre değerlendirmesi olarak adlandırılır) kullanır; bu nedenle, mantıksal AND içindeki ilk koşul yanlışsa, diğer koşullardan herhangi birini değerlendirmeyi denemez.
Benzer şekilde, bir OR yapıyor olsaydınız ve ilk koşul doğruysa, ikinciyi değerlendirmezdi.
Bu nedenle – Gordon
numaralı telefona pahalı testler yapmalısınız. Çoğu durumda değişkenlere karşı test edersiniz, bu nedenle testlerin maliyetleri önemsizdir. Ya da "asla" başarısız olan bir testiniz var (üretimde $ debug gibi). Daha sonra başka bir yaklaşım, muhtemelen başarısız olan testi sola koymaktır. – KingCrunch
Bu, PHP hakkında kesinlikle doğrudur. Her neyse, JavaScript'deki aynı işlevselliğe göre bir fark yaratmaya değer. PHP'de sonuç her zaman bir boole değeridir, JavaScript'te ise son değerlendirilen alt ifadenin değeridir. – Ando
Hayır, bu durumda do_stuff()
yürütmez.
ilk şart her zaman "do_stuf" yürütülecek istiyorsanız php & & operatör
ikinci koşulu çalıştırmak asla yanlış ise, elbette ilk koşul olarak kullanabilsin diye Eğer. Detaylar için cevabımı görün. –