7

エコーの途中で連結してif文を書きたいのですが、可能ですか? これが私が持っているものです。

echo "<li class='".if ($_GET["p"] == "home") { echo "active"; }."'><a href='#'>Home</a>        </li>";
4

4 に答える 4

17

このように、三項演算子を使用すると、次のようになります。

echo "<li class='". (($_GET["p"] == "home") ? "active" : "") . "'><a href='#'>Home</a>        </li>";  
于 2012-11-26T19:58:09.030 に答える
4
echo "<li class='".(($_GET["p"] == "home") ? "active" : "")."'><a href='#'>Home</a>        </li>";
于 2012-11-26T19:58:11.667 に答える
3

次のようにします。

echo "<li class='".($_GET["p"] == "home" ? 'active' : '') ."'><a href='#'>Home</a>        </li>";
于 2012-11-26T19:58:06.990 に答える
3

乱雑なインライン連結の代わりに、慣れることをお勧めしprintf()ますか?

$format = '<li class="%s"><a href="#">Home</a>        </li>';
printf($format, ($_GET['p'] == 'home') ? 'active' : '');
于 2012-11-26T20:16:04.803 に答える