私は次のPHPステートメントを持っています:
echo "<p><strong>Ratio:</strong> " . ($row2["losses"] == 0) ? "∞</p>" : number_format(($row1["wins"] / $row2["losses"]), 2) . "</p>";
私は何が間違っているのですか?毎回エラーになります。
私は次のPHPステートメントを持っています:
echo "<p><strong>Ratio:</strong> " . ($row2["losses"] == 0) ? "∞</p>" : number_format(($row1["wins"] / $row2["losses"]), 2) . "</p>";
私は何が間違っているのですか?毎回エラーになります。
echo "<p><strong>Ratio:</strong> " .( ($row2["losses"] == 0) ? "∞</p>" : number_format(($row1["wins"] / $row2["losses"]), 2) ). "</p>";
三元を(と)の間に置く必要があります。
その他の例(読みやすく):
echo "hi i am ".( $user == "john"? "John" : "Bla")." Doe";
あなたの声明は次のように解釈されています
echo ( "<p><strong>Ratio:</strong> " . ($row2["losses"] == 0) ) ?
"∞</p>" :
number_format(($row1["wins"] / $row2["losses"]), 2) . "</p>";
これは、http://php.net/manual/en/language.operators.precedence.phpよりも優先順位が高いためです.
。?
パーサーに、ターナリが開始および停止する場所を伝える必要があります。さらに良いのは、混乱が生じないように、ターナリをより多くのステートメントに分割することです。
echo "<p><strong>Ratio:</strong> ";
echo $row2["losses"] == 0 ? "∞" : number_format(($row1["wins"] /$row2["losses"]), 2);
echo "</p>";