2016-11-22 2 views
10

Avec le code suivant:PHP ne fait pas écho texte avant + et - signe

$a=1; 
    $b=1; 
    echo $a."%".$b." maradéka: "." = ".$a % $b."<br>"; 
    echo $a."+".$b." összege: "." = ".$a + $b."<br>"; 

Je reçois cette sortie: Comme vous pouvez le voir

1%1 maradéka: = 0 
    2 

, la syntaxe + est identique à la % mais il ne fait pas écho au texte avant l'opération. Peut-être que je suis trop fatigué ou je ne sais pas, mais je ne peux pas comprendre: D J'ai construit des pages Web dynamiques jusqu'à présent, mais celui-ci m'a eu.

+0

Ceci est en fait assez intéressant trouver –

+0

Cela fonctionne parce que la chaîne '1 + 1 összege: = 1' est cataloguée à un int' '1' puis 1 + 1'. – AbraCadaver

Répondre

9

Il prend la valeur numérique de la première partie et l'ajoute à la deuxième partie. Vous voudrez grouper vos maths en utilisant des parenthèses.

$a=1; 
$b=1; 
echo $a."%".$b." maradéka: "." = ".$a % $b."<br>"; 
echo $a."+".$b." összege: "." = ".($a + $b)."<br>"; 
+0

Merde! J'ai honte, mais merci! : D – JustMatthew

+0

Pour être clair, sans les parenthèses est le même que 'echo (($ a." + ".... $ a) + $ b)."
";', où le côté gauche de l'addition est une chaîne commençant par '1', et le côté droit est' int (1) ', d'où le' 2'. – cmbuckley

+0

+1 C'est en fait assez intéressant comment il traite la sortie. Au début, je ne me suis pas rendu compte qu'il pourrait effectivement prendre la première valeur et l'ajouter à la deuxième valeur –