>백엔드 개발 >PHP 튜토리얼 >为什么这段代码没效果

为什么这段代码没效果

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-06 20:18:271599검색

<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으로 문의하세요.