Okuma PHP'nin yol anlamak ifadeleri ise

2 Cevap php

How does PHP read if statements?

Ben şu varsa bu sırayla ifadeler

if ( $number_of_figures_in_email < 6) {
       -- cut: gives false
}


if($number_of_emails > 0) {                                                                         
      -- cut: gives false
} 

if ( $number_of_emails == 0) {
   -- cut: gives true
}

Kod rastgele davranır. Bazen, fıkra ise üçüncü gider ve bana bir başarı verirken bazen ilk iki birine girdi değişkenleri sabit olan hükümler ise.

Bu sadece tabloları eğer ile kod edemez beni düşündürmektedir.

2 Cevap

Bu "rastgele davranmak" değil, bunu ne yapacağını anlatıyor:

if ($a) {
    // do A
}

if ($b) {
    // do B
}

if ($c) {
    // do C
}

Her üç ifs birbirinden bağımsızdır. $a, $b ve $c hepsi true, bu A, B ve C yapacağız If sadece {[(1 )]} ve $c doğrudur, o kadar üzerinde A ve C yapmak ve edeceğiz.

Eğer daha fazla "bağımlı" koşulları arıyorsanız, if..else veya iç içe kullanmak ifs:

if ($a) {
    // do A and nothing else
} else if ($b) {
    // do B and nothing else (if $a was false)
} else if ($c) {
    // do C and nothing else (if $a and $b were false)
} else {
    // do D and nothing else (if $a, $b and $c were false)
}

Yukarıdaki sadece tek bir eylem idam alacak.

if ($a) {
    // do A and stop
} else {
    // $a was false
    if ($b) {
        // do B
    }
    if ($c) {
        // do C
    }
}

İçinde B ve C her ikisi de yukarıda yapmış, ama {[(0)] false} yalnızca alabilirsiniz.

Bu, BTW, hiç PHP özel oldukça evrensel ve.

Bu gibi elseif kullanmak, tablolar halinde birçok farklı gelen sonuçların yalnızca birini geri dönmek isterseniz:

if ( $number_of_figures_in_email < 6) {
       -- cut: gives false
}
elseif($number_of_emails > 0) {                                                                         
      -- cut: gives false
} 
elseif ( $number_of_emails == 0) {
   -- cut: gives true
}