Php &引用;foreach“;导致我的功能不正常
我正在努力完成以下工作:Php &引用;foreach“;导致我的功能不正常,php,arrays,foreach,Php,Arrays,Foreach,我正在努力完成以下工作: <?php $item1 = A; $item2 = B; $item3 = C; $array = array($item1, $item2, $item3); function myFunction () { if ($item = "A") { echo "Alpha "; } elseif ($item = "B") { echo "Bravo "; } els
<?php
$item1 = A;
$item2 = B;
$item3 = C;
$array = array($item1, $item2, $item3);
function myFunction () {
if ($item = "A") {
echo "Alpha ";
}
elseif ($item = "B") {
echo "Bravo ";
}
elseif ($item = "C") {
echo "Charlie ";
}
else {
echo "Error";
}
}
foreach ($array as $item) {
myFunction ();
}
?>
错误日志中没有错误,所以我猜我一定犯了一些与语法无关的错误。我添加了一个echo$项目
在myFunction
之前,输出如下:
Alpha Alpha Alpha
AAlpha BAlpha CAlpha
这意味着$item已经被正确地分配了A、B和C。为什么myFunction不能像预期的那样工作
提前谢谢 1)=
是赋值运算符,不能用于比较。请尝试=
或==
2) 您分配了$item1=A
,但比较了$item=“A”
。然而,A
和“A”
通常是不同的
3) 您没有将$item
传递给函数
在第一个if
语句中,您将“A”
分配给$item
,然后打印出“Alpha”
“if“A”
”
您的代码可能如下所示:
<?php
$item1 = "A";
$item2 = "B";
$item3 = "C";
$array = array($item1, $item2, $item3);
function myFunction ($item) {
if ($item == "A") {
echo "Alpha ";
}
elseif ($item == "B") {
echo "Bravo ";
}
elseif ($item == "C") {
echo "Charlie ";
}
else {
echo "Error";
}
}
foreach ($array as $item) {
myFunction ($item);
}
?>
1)=
是赋值运算符,不能用于比较。请尝试=
或==
2) 您分配了$item1=A
,但比较了$item=“A”
。然而,A
和“A”
通常是不同的
3) 您没有将$item
传递给函数
在第一个if
语句中,您将“A”
分配给$item
,然后打印出“Alpha”
“if“A”
”
您的代码可能如下所示:
<?php
$item1 = "A";
$item2 = "B";
$item3 = "C";
$array = array($item1, $item2, $item3);
function myFunction ($item) {
if ($item == "A") {
echo "Alpha ";
}
elseif ($item == "B") {
echo "Bravo ";
}
elseif ($item == "C") {
echo "Charlie ";
}
else {
echo "Error";
}
}
foreach ($array as $item) {
myFunction ($item);
}
?>
在函数上设置$item参数
$item1 = "A";
$item2 = "B";
$item3 = "C";
$array = array($item1, $item2, $item3);
function myFunction($item){
if($item == "A"){
echo 'Alpha'.'<br/>';
}
elseif ($item == "B") {
echo 'Bravo'.'<br/>';
}
elseif ($item == "C") {
echo 'Charlie'.'<br/>';
}
}
foreach ($array as $item) {
myFunction($item);
}
$item1=“A”;
$item2=“B”;
$item3=“C”;
$array=array($item1,$item2,$item3);
函数myFunction($item){
如果($item==“A”){
回声“Alpha”。
;
}
其他(项目==“B”){
回音“好极了”。
;
}
其他(项目==“C”){
回音“查理”。
;
}
}
foreach($数组作为$项){
我的职能(项目);
}
在函数上设置$item参数
$item1 = "A";
$item2 = "B";
$item3 = "C";
$array = array($item1, $item2, $item3);
function myFunction($item){
if($item == "A"){
echo 'Alpha'.'<br/>';
}
elseif ($item == "B") {
echo 'Bravo'.'<br/>';
}
elseif ($item == "C") {
echo 'Charlie'.'<br/>';
}
}
foreach ($array as $item) {
myFunction($item);
}
$item1=“A”;
$item2=“B”;
$item3=“C”;
$array=array($item1,$item2,$item3);
函数myFunction($item){
如果($item==“A”){
回声“Alpha”。
;
}
其他(项目==“B”){
回音“好极了”。
;
}
其他(项目==“C”){
回音“查理”。
;
}
}
foreach($数组作为$项){
我的职能(项目);
}
另外,您是要将变量传递给函数还是什么?否则,就像现在一样,它应该只输出“error”
您的函数没有参数
foreach ($array as $item) {
myFunction ();
}
传递$item使您的函数能够实际工作,怎么样
function myFunction($item) {
因此:
foreach($array as $item) {
myFunction($item);
}
另外,您是要将变量传递给函数还是什么?否则,就像现在一样,它应该只输出“error” 您的函数没有参数
foreach ($array as $item) {
myFunction ();
}
传递$item使您的函数能够实际工作,怎么样
function myFunction($item) {
因此:
foreach($array as $item) {
myFunction($item);
}
谢谢,我尝试使用==代替,但这次没有得到任何输出。好吧,您分配的$item1=A
不是$item1=“A”
。有一点不同。我在每个作业中都添加了双引号,但仍然没有得到任何输出。我复制了你粘贴的那个,但现在它显示“ErrorError”。尝试手动处理更改。还要注意第三点,我注意得比较晚。谢谢,我尝试使用==代替,但这次没有得到任何输出。好吧,您分配了$item1=A
而不是$item1=“A”
。有一点不同。我在每个作业中都添加了双引号,但仍然没有得到任何输出。我复制了你粘贴的那个,但现在它显示“ErrorError”。尝试手动处理更改。还有第三点,我注意得比较晚。谢谢,这是问题之一!谢谢,这是问题之一!谢谢保罗,我已经得到了这个问题的答案。我应该使用==而不是=进行比较,而且我没有将$item传递给函数。为什么这么粗鲁?另外,已经有另外两个答案指出了这一点。我没有粗鲁,赫尔曼。然而,当我只是想帮助别人时,你却对我无礼。如果你觉得我很粗鲁,那是因为你选择这样读。如果我的本意是粗鲁,我一开始就不会回应。如果我发布了一些已经发布的东西,那是因为它们是像我发布我的一样发布的。最后,如果你能停止攻击我和批评我发布的所有东西,那就太好了。谢谢保罗,我已经得到了这个问题的答案。我应该使用==而不是=进行比较,而且我没有将$item传递给函数。为什么这么粗鲁?另外,已经有另外两个答案指出了这一点。我没有粗鲁,赫尔曼。然而,当我只是想帮助别人时,你却对我无礼。如果你觉得我很粗鲁,那是因为你选择这样读。如果我的本意是粗鲁,我一开始就不会回应。如果我发布了一些已经发布的东西,那是因为它们是像我发布我的一样发布的。最后,如果你能停止攻击我和批评我发布的所有东西,那就太好了。