2016-04-05 36 views
0

Dizi düğümünün karşılaştırma işleminin, aynı dizi düğümüne 'doğru' atamasıyla ilişkili olarak nasıl çalıştığından emin değilim. Bu, Üçlü sözdiziminin bazı alternatif kullanımı mı? PHP referansına bir açıklama ya da bir bağlantı (bunu nasıl arayacağımı bile bilmiyorum) yardımcı olacaktır. Şimdiden teşekkürler.Bu sözdizimi yapısı nedir ve nasıl çalışır?

// RESOLVE myvar TO BOOLEAN 
$atts['myvar'] = 'true' == $atts['myvar']; 
+0

Yorum, kodun ne yaptığını size söyler: 'myvar'ı boolean'a çöz, ancak bir _true_ boolean'a değil, yalnızca 'true' dizesine çözümlemiyor. Bana sorarsan korkunç bir kod. 'settype ($ atts [' myvar '],' boolean ') 'daha iyi olurdu. –

+0

@MartinBean Düzenli olarak boolean'a düzgün şekilde giderir. Gördüğüm en iyi koddan çok uzak ama korkunç da demiyorum. –

+0

İkinize de teşekkürler. – fslap

cevap

2

Böyle bu okumalısınız:

$atts['myvar'] = ('true' == $atts['myvar']); 

(parantez tasarruf kuruş asla değer). çalıştırdığınızda, dizetrue (4 harf) ve daha sonra o zamana boole olacak kıyaslamak sonucuyla birlikte $atts['myvar'] üzerine olan $atts['myvar'] gerçek içeriğini karşılaştırır. "True" dizgesine eşitse, sonuç true no.lu boole false olur. Başka bir deyişle, "boole" dizisini normal boole dönüştürür.

+0

Özlü yanıt için çok teşekkür ederim. Bu çok yardımcı olur. – fslap

İlgili konular