SORU
23 Ocak 2011, Pazar


Bir dize ayrıştırma PHP boolean bir değer haline

Bugün PHP ile oynuyordum, ve bu dize değerleri "" ve "yanlış" doğru bir durumda boolean için ayrıştırıldı değil, örneğin aşağıdaki fonksiyonu da dikkate alınarak . doğru keşfettim

function isBoolean($value) {
   if ($value) {
      return true;
   } else {
      return false;
   }
}

Eğer çalıştırmak için:

isBoolean("true") // Returns true
isBoolean("") // Returns false
isBoolean("false") // Returns true, instead of false
isBoolean("asd") // Returns true, instead of false

Sadece işe yaramıyor "1" ve "" değerleri: . 0

isBoolean("1") // Returns true
isBoolean("0") // Returns false

Orada "doğru" ve "yanlış" dizeleri boolean içine? ayrıştırmak için PHP yerel bir işlevdir

CEVAP
17 Mayıs 2012, PERŞEMBE


PHP kullanır. filter_var yöntemi: bu işi yerli PHP bir yöntem yoktur

$bool = filter_var($value, FILTER_VALIDATE_BOOLEAN);

PHP göre manuel:

Döndürür TRUE "1", "", "" ve"". evet doğru Aksi halde FALSE döndürür.

Eğer FİLTER_NULL_ON_FAİLURE set, FALSE döndürdü sadece "0", "false", "kapalı", "hayır" ve "" ve NULL döndürülür olmayan tüm boolean değerleri.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HowcastFoodDrink

    HowcastFoodD

    21 EYLÜL 2010
  • Motor Trend Channel

    Motor Trend

    11 Mart 2006
  • wwjoshdo

    wwjoshdo

    25 Mayıs 2009