2016-04-17 8 views
-1

Ich habe ein paar Zeilen Code

$case=0; 
file_put_contents("text.txt", $case, FILE_APPEND); 
if ($case = 1) 
{ 
    $message['a']="co"; 
} 
if ($case = 0) 
{ 
    $message['a']="to"; 
} 
echo $message['a']; 

Es wird Echo "co". Warum ist das? Der file_put-Inhalt setzt "0". Allerdings denkt die if-Anweisung, dass es aus irgendeinem Grund 1 ist ...

+0

Sie müssen verwenden '= = 'für beide if-Anweisungen – larsAnders

Antwort

0

Sie tun, ist falsch in if Zustand. Sie weisen dabei statt Vergleich.
So, hier ist die Lösung.

$case=0; 
file_put_contents("text.txt", $case, FILE_APPEND); 
if ($case == 1) 
{ 
    $message['a']="co"; 
} 
if ($case == 0) 
{ 
    $message['a']="to"; 
} 
echo $message['a']; 
+0

ha ha ha - i ts ein Rennen, um die gleiche Antwort @Md zu bekommen. Sahadat Hossain :)) – gavgrif

+0

Du hast keine Ahnung wie sauer du mich gemacht hast. Ich habe mich so verdammt sauer mit den konstanten Gedanken geärgert. "WARUM SIE NICHT FUNKTIONIERT?!?!?!?!" Nun, es stellt sich heraus, dass ich ein Idiot bin. – Amath1an

0

Sie müssen den Vergleichsoperator "==" verwenden, wenn Sie Werte vergleichen: Andernfalls weisen Sie Werte zu (in diesem Fall haben Sie $ case als 1 zugewiesen und dann war die Botschaft „co“.

$case=0; 
    file_put_contents("text.txt", $case, FILE_APPEND); 
    if ($case == 1) 
    { 
     $message['a']="co"; 
    } 
    if ($case == 0) 
    { 
     $message['a']="to"; 
    } 
    echo $message['a']; 
Verwandte Themen