isset()
veya empty()
boş bir değişken için test etmek yanı sıra daha iyi bir yolu var mı?
Bu bağlamda bağlıdır.
isset()
değişkenin değeri değil zaman SADECE NULL
true döndürür (ve böylece değişken en az tanımlanır).
Değişkenin değeri "boş" bir değer, genellikle bu aracı olarak kabul edildiğinde empty()
true dönecektir 0
, "0"
, {[(3) ]}, FALSE
, array()
(boş bir dizi) ve ""
(boş dize), başka bir şey boş değil.
Bazı örnekler
FALSE == isset($foo);
TRUE == empty($foo);
$foo = NULL;
FALSE == isset($foo);
TRUE == empty($foo);
$foo = 0;
TRUE == isset($foo);
TRUE == empty($foo);
$foo = 1;
TRUE == isset($foo);
FALSE == empty($foo);
Olsa PHP ile olsun garip == bazı sonuçları için bir göz uzak tutun; Eğer beklediğiniz sonucu elde etmek için === kullanmanız gerekebilir, örneğin
if (0 == '') {
echo "weird, huh?\n";
}
if (0 === '') {
echo "weird, huh?\n";
} else {
echo "that makes more sense\n";
}
0 false, ve boş bir dize yanlış olduğundan, 0 =='' doğru olan, YANLIŞ == FALSE aynıdır. De türlerini kontrol etmek === güçleri PHP kullanma.