php false değerini dönen değil

4 Cevap php

Ben buraya dönmek için yanlış bir değer elde edemezsiniz. Bir gerçek değeri para cezası verir. Ne eksik?

if ((count($this->_brokenRulesCollection)) == 0)  {
    return true;
} else {
    return false;
}

4 Cevap

Bir dizeye dönüştürülür zaman PHP, false boş bir dizedir ve true bir dizeye dönüştürülür "1" dir.

var_dump yerine hata ayıklama için echo arasında kullanın.

Dizi $this->_brokenRulesCollection boş değilse kod sadece false dönebilirsiniz.

$this->_brokenRulesCollection uygulanan Sayılabilir arayüzü ile bir dizi ya da bir nesne değilse, o zaman count($this->_brokenRulesCollection) 1 geri gelecektir.

(Eğer türü eşleşen operatörleri === veya! == Kullandığınız sürece) koşullu ifadelerde sıfır olmayan herhangi bir tamsayı true eşdeğerdir, sıfır olmayan herhangi bir uzunlukta dize doğru eşdeğerdir ve tersine, sıfır veya boş bir dize yanlış.

Bu yüzden

if ((count($this->_brokenRulesCollection)) == 0)  {
   return true;
} else {
  return false;
}

Gibi yazılabilir:

return count($this->_brokenRulesCollection);

C.

aslında "yanlış" görmek istiyorsanız dönmeden önce, bir değişkenin değerini koydu. örneğin,

if ((count($this->_brokenRulesCollection)) == 0)  {
    $value=true;
} else {
    $value=false;
}
return $value;