是的,这是一个简单的问题,但我无法通过PHP文档或Google找到答案。 (我只是在学习PHP ......)
如果有效:
<?php $d=date("D"); if ($d="Mon") { ?>echo this text on Monday<?php endwhile; ?><?php } else { ?><?php } ?>
为什么不这样?
<?php $d=date("D"); if ($d="Mon,Tue") { ?>echo this text on Monday and Tuesday<?php endwhile; ?><?php } else { ?><?php } ?>
我在星期一和星期二之间需要不同的分隔符吗?我试过了||和&amp;&amp; ....
谢谢,Mark
答案 0 :(得分:8)
当您说$d
时,您正在执行($d="Mon")
的作业。你想要的是比较运算符(==
):
if ($d == "Mon" || $d == "Tue")
答案 1 :(得分:7)
您假设date("D")
将返回多个值。它只会返回当天。而是使用它:
<?php $d=date("D"); if (in_array($d, array("Mon","Tue"))) { ?>echo this text on Monday and Tuesday<?php endwhile; ?><?php } else { ?><?php } ?>
答案 2 :(得分:4)
字符串$d
要么包含“Mon”或“Tue”,要么不包含“Mon,Tue”。你不能用这种方式比较字符串。你需要使用这样的表达式:
if ($d == "Mon" || $d == "Tue") {
答案 3 :(得分:3)
尝试:
<?php $d=date("D"); if (in_array($d,array('Mon','Tue'))) { ?>echo this text on Monday and Tuesday<?php endwhile; ?><?php } else { ?><?php } ?>
答案 4 :(得分:0)
也许这个:
if ($d == "Mon" || $d == "Tue") {
另外,php有两个相等的运算符。
==和===
答案 5 :(得分:0)
如果你的字符串值为'Mon,Tue',那么你可以检查
if($d=='Mon,Tue')
没有机会,所以你需要使用OR条件。
即,
if($d=='Mon' || $d=='Tue')
答案 6 :(得分:0)
试试这个更易于用户阅读的代码:
<?php $d=date("D");
$days=array("Mon,Tue");
if ($d="Mon,Tue") if(in_array($a,$days)) { ?>echo this text on Monday and Tuesday<?php endwhile; ?><?php } else { ?><?php } ?>