$var1=true;
Gut, den Inhalt von $var1 hast du bisher nicht verraten. Dass er TRUE oder FALSE ist, scheint ein Sonderfall zu sein.
//geht
echo "1:<br>";
echo $var1?"honig":"kuchen";
echo "<br><br><br>";
Und das hier:
$var1 = "Katze";
echo "5:<br>";
echo $var1=="Hund"?"Frisst Knochen":"Frisst Fisch";
Vermute, dass die Klammern um $var1=="Hund" dringend gebraucht werden.
Kalle