首頁 >後端開發 >php教程 >为什么这段代码没效果

为什么这段代码没效果

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原創
2016-06-06 20:18:271566瀏覽

<code><?php if ($_GET['cate']==''||$_GET['cate']='diary' ) {
echo '<a class="is" href="?cate=diary">DIARY<a href="?cate=blog">BLOG</a>';
} elseif ($_GET['cate']='blog') {
echo '<a href="?cate=diary">DIARY</a><a class="is" href="?cate=blog">BLOG</a>';
} 
?></code>

不管为cate设置什么值都输出<a class="is" href="?cate=diary">DIARY</a><a href="?cate=blog">BLOG</a>

回复内容:

<code><?php if ($_GET['cate']==''||$_GET['cate']='diary' ) {
echo '<a class="is" href="?cate=diary">DIARY<a href="?cate=blog">BLOG</a>';
} elseif ($_GET['cate']='blog') {
echo '<a href="?cate=diary">DIARY</a><a class="is" href="?cate=blog">BLOG</a>';
} 
?></code>

不管为cate设置什么值都输出<a class="is" href="?cate=diary">DIARY</a><a href="?cate=blog">BLOG</a>

<code class="php"><?php if ($_GET['cate']==''||$_GET['cate']=='diary' ) {
echo '<a class="is" href="?cate=diary">DIARY<a href="?cate=blog">BLOG</a>';
} elseif ($_GET['cate']=='blog') {
echo '<a href="?cate=diary">DIARY</a><a class="is" href="?cate=blog">BLOG</a>';
} 
?></code>

== 符号写错了

$_GET['cate']================='diary'

粗心的小明, if条件第二个表达式永远为真 elseif的条件也是。

粗心的小明死在了==上了

你以后写 逻辑表达式的时候,养成把期望值放在前面的习惯,这样,你不小心把==打成=的时候,就会报错。个人认为编码风格可以参考CI框架的,他的文档上面会有说明

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn