2013-03-17 10 views
5

|| kullanarak yankılanabilir, böylece doğru olarak değerlendirilen ilk değişkeni kullanır? örneğin Can || PHP'de boolean olmayan türlerin değerleri arasında seçim yapmak için operatör kullanılır?

,

$a = false; 
$b = 'b'; 
echo $a || $b || 'neither'; // evaluates to 1 ? 
+1

Eğer bir şeylerin (ikiden fazla) bir listesi varsa, o zaman düşünebilirsiniz: echo current (array_filter (dizi ($ a, $ b, 'ne'))); – mario

+1

soru daha çok "|| operatörü boole olmayan türlerle kullanılabilir mi?" eğer doğru anladıysam. Bunu söylüyorsun $ a || $ b || 'ne' geri döndü 1. –

+0

@MartinAtkins evet bu ideal olurdu! –

cevap

5

Ternary operator

echo (($a) ? : $b) ? : 'neither'; 
+0

Teknik olarak, bu artık üçlü operatör değil; $ a? $ b: $ c' denir çünkü 3 işlenen vardır (ve başka bir standart operatörün yaptığı için). $ a?: $ b', üçlü operatör gibi görünen ve çalışan bir ikili operatördür. '' – IMSoP

+0

Dokümanlar hala üçlü operatör olarak adlandırılıyor ' –

+0

Awesome! Teşekkürler! –

1

Ultimate üçlü

$a = false; 
$b = 'b'; 
echo ($a)?$a:(($b)?$b:'neither'); 
1
echo $a ? $a : ($b ? $b : ($c ? $c : 'neither')); 

ve daha fazla değişken varsa bu böyle devam ama çirkin alacak ve zor çok uzun zaman okumak.