使用 php 我在 foreach 中使用 if elseif else 语句时遇到问题
Using php I have trouble with if elseif else statements inside a foreach
很抱歉打扰你,但我是编码方面的初学者,有点卡住了。
我已经在网上搜索并尝试了多种建议(也包括此处发布的一些建议),但总是失败。
简短描述:
我正在 repl.it -> https://php--olvier79.repl.co
里面做一个项目
我有一个 index.php
在那个 index.php 我有一个 foreach 循环。
foreach 循环工作正常并在提交后在页面上打印我想要的输出。
foreach ($_POST as $name => $value)
{
print "{$name}: {$value}<br />";
}
当我想使用 if、elseif 和 else 语句清理输出时,问题就开始了;
我尝试了多种建议,但这是我目前坚持的建议:
foreach ($_POST as $name => $value)
if ($value = "Submit")
{
print " Data received Processing";
}
elseif ($value = "")
{
print "";
}
else
{
print "{$name}: {$value}<br />";
}
如有任何帮助,我们将不胜感激。
您似乎在条件语句中使用了赋值运算符,而您可能打算检查相等性。
赋值运算符(单个=
):$variable = 1
。意味着您正在将整数 1
分配给变量 $variable
.
一个比较运算符(双倍或三倍 =
):$variable === 1
。是一个语句,用于评估变量 $variable
是否(真正)等于整数 1
,从而产生 true
或 false
表达式。
所以在你的代码中:
if ($value = "Submit") {
// $value now holds the string "Submit", which is 'truthy', and evaluates to 'true'. This code block will always be executed.
}
虽然您可能打算:
if ($value === 'Submit') {
// Execute this code block if $value is truly equal to the string `Submit`.
}
很抱歉打扰你,但我是编码方面的初学者,有点卡住了。
我已经在网上搜索并尝试了多种建议(也包括此处发布的一些建议),但总是失败。
简短描述:
我正在 repl.it -> https://php--olvier79.repl.co
里面做一个项目
我有一个 index.php
在那个 index.php 我有一个 foreach 循环。
foreach 循环工作正常并在提交后在页面上打印我想要的输出。
foreach ($_POST as $name => $value)
{
print "{$name}: {$value}<br />";
}
当我想使用 if、elseif 和 else 语句清理输出时,问题就开始了;
我尝试了多种建议,但这是我目前坚持的建议:
foreach ($_POST as $name => $value)
if ($value = "Submit")
{
print " Data received Processing";
}
elseif ($value = "")
{
print "";
}
else
{
print "{$name}: {$value}<br />";
}
如有任何帮助,我们将不胜感激。
您似乎在条件语句中使用了赋值运算符,而您可能打算检查相等性。
赋值运算符(单个=
):$variable = 1
。意味着您正在将整数 1
分配给变量 $variable
.
一个比较运算符(双倍或三倍 =
):$variable === 1
。是一个语句,用于评估变量 $variable
是否(真正)等于整数 1
,从而产生 true
或 false
表达式。
所以在你的代码中:
if ($value = "Submit") {
// $value now holds the string "Submit", which is 'truthy', and evaluates to 'true'. This code block will always be executed.
}
虽然您可能打算:
if ($value === 'Submit') {
// Execute this code block if $value is truly equal to the string `Submit`.
}