php: Bu durum doğru olduğunu?

4 Cevap

Ben şu varsa koşul ifadesi

if ( (strlen($data[70])>0) || ( (remove19((trim($data[29])) == '7135556666')) && isLongDistance($data[8]))  ) 

$ veriler bir veritabanında bir kayıt olduğu.

Amacım $ veri [70] boş değil, ve aynı zamanda $ veri [29] = 713.555.666 && satırları içeren tüm satırları dahil etmektir $ Veri [8] isLongDistance = DOĞRU

IsLongDistance ($ veri [8]) false dönerse Benim soru hala $ veri beri satır dönecektir, vardır [70] boş değil mi?

şimdiden teşekkürler

4 Cevap

Evet, bir veya yapıyor çünkü. Sizin deyim DOĞRU olacak, "DOĞRU VEYA (doğru ve yanlış)" azaltacaktır.

Evet, bir OR operatörünü var çünkü.

Ilk şey DOĞRU dönerse başarılı olacaktır. Ilk şey FALSE dönecektir, o zaman veya sonrasında kısmını yürütecek ve numarası doğru ve işlevi DOĞRU verir, o zaman başarılı olur.

Neyse ben bu gibi üzerine yazmak istiyorum

if ( !empty($data[70]) or ( (int)$data[29] == 7135556666 and isLongDistance($data[8]) )

Evet öyle. Ama gerçekten anlamak için ne yapar insanlar, anlamak sadece bilgisayarlar için yazma kodu dont bu kodu yazmak.

Bu simplefied versiyonunu düşünün.

$dataLenght   =  strlen($data[70]);
$remove19     =  remove19((trim($data[29]);
$longDistance = isLongDistance($data[8]);


if ( $dataLenght > 0 ) // your first OR if false it would goto elseif statement
{
  //condition
}

elseif( $remove19 == '7135556666'  && $longDistance) // your second statement 
{
  //conditon

}