php echo oyunculuk garip

2 Cevap php

this is probably so simple but still i can't get it to work i'm using this statement:

echo "$num1"."+"."$num2"."=".$num1+$num2."<BR>";

i was expecting something like 3+3=6 but instead i get just 6

herhangi bir fikir neden?

2 Cevap

Ayrıca etrafında parens koyun. Bu operasyon çatışma bir emirdir.

echo "$num1"."+"."$num2"."=".($num1+$num2)."<BR>";

Nedeni sanki PHP ifadesini yorumladığı olduğunu:

$a = "$num1"."+"."$num2"."=".$num1;
$b = $num2."<BR>";
echo $a + $b;

Dizeleri eklerken, PHP bunun dışında bir dizi cooerce çalışır. $a dizesinde ilk sayı $num1 ya da "3". Bu $num2 ya da "3" alıyorum, $b için aynı işi yapar. Bu durumda, $a+$b 6'dır.

echo "$num1"."+"."$num2"."=".($num1).+.($num2)."<BR>";

işe yarayabilir!