Php 如果表现不正常,则用速记回音
我用PHP编程,我使用“速记if”将一些HTML代码回送到页面上,但它的行为方式很奇怪Php 如果表现不正常,则用速记回音,php,shorthand-if,Php,Shorthand If,我用PHP编程,我使用“速记if”将一些HTML代码回送到页面上,但它的行为方式很奇怪 echo '<div id="filter_bar"> <ul>'; echo '<li><a href="?select=trending"' . ($_GET['select'] == "trending") ? ' class="filter_selected">Trending</a></li>' : '>Trend
echo '<div id="filter_bar">
<ul>';
echo '<li><a href="?select=trending"' . ($_GET['select'] == "trending") ? ' class="filter_selected">Trending</a></li>' : '>Trending</a></li>';
echo '<li><a href="?select=most_picked"' . ($_GET['select'] == "most_picked") ? ' class="filter_selected">Most Picked</a></li>' : '>Most Picked</a></li>';
echo '<li><a href="?select=newest"' . ($_GET['select'] == "newest" || empty($_GET['select'])) ? ' class="filter_selected">Newest</a></li>' : '>Newest</a></li>';
echo '</ul></div>';
echo'
”;
回音“”:“>趋势”;
回音“”:“>挑选最多的”;
回音“”:“>最新的”;
回声“
”;
我得到的结果代码如下
class="filter_selected">Trending</a></li> class="filter_selected">Most Picked</a></li> class="filter_selected">Newest</a></li>
class=“filter\u selected”>趋势分析
如您所见,开始列表标记未显示。。。但如果我将每行上的第一个句号“.”替换为“,”逗号,它们就会这样做
这是可行的,用逗号
我应该在这里用逗号吗?Everywhere online要求显示句号“.”。一种可能的解决方案是
echo "<li><a href='?select=newest'";
echo ($_GET['select'] == "newest" || empty($_GET['select'])) ? ' class="filter_selected">Newest</a></li>' : '>Newest</a></li>';
echo“”:“>最新的”;
一种可能的解决方案是
echo "<li><a href='?select=newest'";
echo ($_GET['select'] == "newest" || empty($_GET['select'])) ? ' class="filter_selected">Newest</a></li>' : '>Newest</a></li>';
echo“”:“>最新的”;
将括号更改为以下内容:
echo '<div id="filter_bar">
<ul>';
echo '<li><a href="?select=trending"' . ($_GET['select'] == "trending" ? ' class="filter_selected">Trending</a></li>' : '>Trending</a></li>');
echo '<li><a href="?select=most_picked"' . ($_GET['select'] == "most_picked" ? ' class="filter_selected">Most Picked</a></li>' : '>Most Picked</a></li>');
echo '<li><a href="?select=newest"' . (($_GET['select'] == "newest" || empty($_GET['select'])) ? ' class="filter_selected">Newest</a></li>' : '>Newest</a></li>');
echo '</ul></div>';
echo'
”;
回音“”:“>趋势””;
回音“”:“>挑选最多的””;
回音“”:“>最新的””;
回声“
”;
如果不这样做,PHP就不知道您的具体情况。还可以看看,这解释了为什么它使用逗号
顺便说一下:调用?:将括号更改为以下内容:
echo '<div id="filter_bar">
<ul>';
echo '<li><a href="?select=trending"' . ($_GET['select'] == "trending" ? ' class="filter_selected">Trending</a></li>' : '>Trending</a></li>');
echo '<li><a href="?select=most_picked"' . ($_GET['select'] == "most_picked" ? ' class="filter_selected">Most Picked</a></li>' : '>Most Picked</a></li>');
echo '<li><a href="?select=newest"' . (($_GET['select'] == "newest" || empty($_GET['select'])) ? ' class="filter_selected">Newest</a></li>' : '>Newest</a></li>');
echo '</ul></div>';
echo'
”;
回音“”:“>趋势””;
回音“”:“>挑选最多的””;
回音“”:“>最新的””;
回声“
”;
如果不这样做,PHP就不知道您的具体情况。还可以看看,这解释了为什么它使用逗号
顺便说一句:?:被称为。也许你可以让你的生活更轻松一点:
echo '<div id="filter_bar"><ul>',
'<li><a href="?select=trending"', $_GET['select'] == "trending" ? ' class="filter_selected">' : '>', 'Trending</a></li>',
'<li><a href="?select=most_picked"', $_GET['select'] == "most_picked" ? ' class="filter_selected">' : '>', 'Most Picked</a></li>',
'<li><a href="?select=newest"', ($_GET['select'] == "newest") || empty($_GET['select']) ? ' class="filter_selected">' : '>', 'Newest</a></li>',
'</ul></div>';
也许你可以让你的生活更轻松一点:
echo '<div id="filter_bar"><ul>',
'<li><a href="?select=trending"', $_GET['select'] == "trending" ? ' class="filter_selected">' : '>', 'Trending</a></li>',
'<li><a href="?select=most_picked"', $_GET['select'] == "most_picked" ? ' class="filter_selected">' : '>', 'Most Picked</a></li>',
'<li><a href="?select=newest"', ($_GET['select'] == "newest") || empty($_GET['select']) ? ' class="filter_selected">' : '>', 'Newest</a></li>',
'</ul></div>';
原因是:
echo''。“是吗?”aaa’:‘bbb’代码>将为您提供aaa
因为它与“1”相同aaa':“bbb”
你应该这样做:
echo''。(对?'aaa':'bbb')代码>原因是:
echo''。“是吗?”aaa’:‘bbb’代码>将为您提供aaa
因为它与“1”相同aaa':“bbb”
你应该这样做:
echo''。(对?'aaa':'bbb')代码>不知道你有什么问题,但这段代码对我来说太糟糕了。
我会这样做:
在PHP代码中,我首先准备变量
$sections = array(
'newest' => 'Newest',
'trending' => 'Trending',
'most_picked' => 'Most Picked',
);
if (empty($_GET['select']) OR !$choice = array_search($sections,$_GET['select'])) {
$choice = 'newest';
}
然后在模板中运行平滑和短循环:
<div id="filter_bar">
<ul>
<? foreach ($sections as $sect => $name): ?>
<li>
<a href="?select=<?=$sect?><? if ($choice == $sect) ?>" class="filter_selected"<? endif ?>><?=$name?></a>
</li>
<? endforeach ?>
</ul>
</div>
-
不知道你有什么问题,但这段代码对我来说太糟糕了。
我会这样做:
在PHP代码中,我首先准备变量
$sections = array(
'newest' => 'Newest',
'trending' => 'Trending',
'most_picked' => 'Most Picked',
);
if (empty($_GET['select']) OR !$choice = array_search($sections,$_GET['select'])) {
$choice = 'newest';
}
然后在模板中运行平滑和短循环:
<div id="filter_bar">
<ul>
<? foreach ($sections as $sect => $name): ?>
<li>
<a href="?select=<?=$sect?><? if ($choice == $sect) ?>" class="filter_selected"<? endif ?>><?=$name?></a>
</li>
<? endforeach ?>
</ul>
</div>
-
您不应该依赖于short\u open\u标记,因为这可能会被禁用。呃,只需启用它即可。没什么大不了的。只是不要用它,没什么大不了的。但是我喜欢它,短标记看起来很整洁,而且需要的输入量要少得多。你不应该依赖短标记,因为它可能会被禁用。呃,启用它就行了。没什么大不了的。只是不要用它,没什么大不了的。但是我喜欢它,短标签看起来很整洁,而且不需要太多的打字。谢谢你的建议,请问在这种情况下逗号和句点有什么区别?我通常会使用句点,例如:”$阶级趋势。”代码>在上面发布的代码中。有什么区别吗?使用
是在输出之前连接字符串。使用逗号只是一个接一个地输出字符串(这符合您的需要)。严格来说,在使用echo进行输出之前,不需要连接字符串(但可以这样做)。使用,
s的另一个好处是,您可以在echo
语句中使用函数,这些函数可以返回字符串,也可以自己回显(这里不是这种情况,仅供参考),因此它可以帮助简化自己的代码。感谢您的建议,请问在这种情况下逗号和句点之间有什么区别?我通常会使用句点,例如:”$阶级趋势。”代码>在上面发布的代码中。有什么区别吗?使用
是在输出之前连接字符串。使用逗号只是一个接一个地输出字符串(这符合您的需要)。严格来说,在使用echo进行输出之前,不需要连接字符串(但可以这样做)。使用,
s的另一个好处是,您可以在echo
语句中使用函数,这些函数可以返回字符串,也可以自己回显(这里不是这种情况,仅供参考),因此它可以帮助简化自己的代码。