我有以下代码
<?php
for ($i=1; $i<=4; $i++)
{
echo $i . "<br>";
}
?>
结果1 2 3 4
我有另一个代码,其变量$ number = 1,编码如下
if ($number = $i)
{
echo "Message" ;
}
我的问题是我需要在变量$ i显示的值列表中检查变量$ number(1)。
有人可以找到解决方案吗?提前谢谢。
答案 0 :(得分:2)
您应该使用==
(comparison operator)代替=
来比较if语句中的两个值,如下所示:
if ($number == $i)
{
echo "Message" ;
}
然而,假设这只是一个错字,这是我的建议:
您可以先在array中存储要打印的数字。
$i = array(1,2,3,4);
foreach($i as $num)
{
echo $num."<br/>" ;
}
然后,您可以使用php的in_array() function来检查上面打印的任何数字中是否存在$number
。
if(in_array($number, $i))
{
echo "Message" ;
}
答案 1 :(得分:0)
=
是分配运算符,要比较你必须使用==
if ($number == 1) {
//...
}
此外,还有使用
的情况if ($number = $value) {
//...
}
是有用的。此代码将$ value分配给$ number并返回其值,因此if ($number = 1) echo "hi";
将回显“hi” - 而`if($ number = 0)echo“hi”;什么都不输出像上面这样的赋值是没用的,它主要用于调用函数时,你想要恢复它的返回值并在同一步骤中比较它
if ($number = getValue()) {
//$number is set to getValue() and is not 0, null or false
}
答案 2 :(得分:0)
尝试此操作,这会将您的增量值放入数组中,之后您可以使用任意数字进行验证
$inc=array();
for ($i=1; $i<=4; $i++)
{
array_push($inc,$i);
}
$number=1;
if(in_array($number, $inc))
{
echo "your Message" ;
}